iJoomla.org

ترفندهای جوملا

8 پست در این موضوع

برای دوستان بسیار پیش میاد که در حین طراحی وبسایت های جوملا به یه مسأله بر می خورن ولی براش آموزشی پیدا نمی کنن. در اکثر موارد، دلیل پیدا نشدن جواب اینه که سئوال کمیاب هستش و یا در مسیر استاندارد آموزش قرار نداره.

اسم این تاپیک رو از این جهت "ترفند" گذاشتم که قرار دارم توش درباره مسائلی ورای آموزش های نرمال جوملا صحبت کنم.

خب ساخت فرم تماس جوملا، اضافه کردن موقعیت به قالب یا آموزشهای گرافیکی قالب جوملا رو هر جایی می شه پیدا کرد ولی نکات ریز دیگه ای هم هست که کمتر بهشون توجه می شه.

من تا جایی که مجال کمم اجازه بده این تاپیک رو آپدیت می کنم ولی از مدیران، کهنه کارها و دوستان قدیمی می خوام وقت بذارن و در مورد تجارب خاص خودشون توی این تاپیک حرف بزنن.

می شه این تاپیک رو تبدیل کرد به یه تاپیک خاص ولی نه یه تنه!

Share this post


Link to post
Share on other sites
آموزش ووکامرس قالب جوملا قالب وردپرس قالب رایگان وردپرس قالب رایگان جوملا هاست نامحدود هاست جوملا هاست لاراول هاست وردپرس هاست ارزان هاست ربات تلگرام خرید دامنه آموزش ساخت ربات تلگرام با php آموزش لاراول آموزش cPanel آموزش php آموزش فرم ساز RSform آموزش ساخت ربات جذب ممبر آموزش ساخت ربات دوستیابی آموزش ساخت ربات فروشگاهی برای ووکامرس آموزش طراحی سایت داینامیک با php آموزش بخش پشتیبانی با rsticket

ارسال شده در (ویرایش شده)

حذف تگ متا Generator از هد جوملا

Generator یکی از اطلاعاتی است که در بخش <head> در یک تگ ابر داده (meta) نمایش داده می شود. در جوملا این تگ با نام جوملا به کدهای اچ تی ام ال تزریق می شود. گاهی اوقات ممکن شما بخواهید به دلایل امنیتی، سئو یا... این تگ را حذف کنید. در این مطلب به روشی اصولی و بسیار ساده برای این کار اشاره شده است. با پیگیری این مطلب می توانید بر روی تگ meta generator وب سایت های جوملا ۳ تسلط پیدا کرده و آن را به راحتی از بدنه کدهای وب سایت خود حذف کنید.

گام اول

برای حذف Generator از head وب سایت جوملا راههای مختلفی وجود دارد که در این مطلب به ساده ترین روش این کار اشاره شده است. ابتدا به دایرکتوری اصلی وب سایت (پوشه ای که وب سایت شما در آن قرار گرفته) رفته سپس مسیر زیر را دنبال کنید:

templates > your-template > index.php

your-template در اینجا نام قالب پیشفرض وب سایت شماست.

گام دوم

فایل index.php قالب وب سایت خود را انتخاب کرده و با یک ویرایشگر متن آنرا باز کنید و در ابتدایی ترین بخش کدهای قالب (پیش از شروع تگ های اچ تی ام ال) دستور زیر را اضافه کنید:

$this->setGenerator(null);

در ذهن داشته باشید که این یک قطعه کد پی اچ پی است لذا باید در بین تگ ابتدایی و انتهایی پی اچ پی (بین php?> و <?) نوشته شود:

<?php
$this->setGenerator(null);
?>

منبع: Yutab.net

ویرایش شده در توسط iJoomla.org

Share this post


Link to post
Share on other sites

ارسال شده در (ویرایش شده)

لینک دادن به وب سایت های دیگر بدون تأثیر در پیج رنک وبسایت شما

این یه موضوع خیلی ساده است که در صورت عدم توجه حتماً مشکل ساز می شه.

برای همچین کاری کافیه فقط به لینکهای وبسایتتون یه Attribute اضافه کنید همین!

rel="nofollow"

این سلکتور به موتورهای جستجو می گه که لینک رو دنبال نکنن و مستقیماً اثر منفی لینک خارجی روی سئوی وبسایت شما رو از بین می بره. نمونه کامل یک لینک nofollow:

<a href="https://google.com" rel="nofollow">Google</a>

اگه یه وبسایت با لینک های خارجی زیاد دارید نگران زحمت اضافه کردن این Attribute به همه لینک ها نباشید. پلاگین رایگان noExternalLinks این کار رو برای شما بصورت خودکار انجام میده یعنی بعد از نصب و فعالسازی، خودش خودبخود تمام لینک های خارجی رو شناسایی می کنه و nofollow رو بهشون اضافه می کنه. در این بین افزونه های دیگه ای هم هستن که برای این کار ساخته شدن ولی طبق تجربه شخصی، تا این تاریخ این بهترین افزونه موجوده.

ویرایش شده در توسط iJoomla.org

Share this post


Link to post
Share on other sites

ارسال شده در (ویرایش شده)

پیدا کردن Offset.right توسط JQuery

همونطور که می دونید JQuery فقط افست بالا و چپ رو مستقیماَ بر می گردونه. امروز داشتم روی یه قالب کار می کردم که برای یه بخشی ازش نیاز به تعیین فاصله آبجکت از سمت راست پنجره داشتم.

امکاناتی که JQuery در اختیارم می ذاشت چیا بود؟

می تونستم عرض پنجره و عرض آبجکت رو با متد ()width. پیدا کنم. همچنین افست چپ رو هم در اختیار داشتم. خب خیلی ساده به روشی که در ادامه بهش اشاره می کنم عرض آبجکت و فاصله از چپ رو از عرض پنجره کم کردم و جواب گرفتم:

// Controlling main navigation drop-down behavior
   jQuery(function(){

       // Determine whole page width
       var winWidth = parseInt(jQuery(window).width());

        // Parent1 (products menu item)
       var offset1 = jQuery('.yutab-nav ul li.parent.parent1').offset();
       var offsetLeft1 = parseInt(offset1.left);
       var objWidth1 = parseInt(jQuery('.yutab-nav ul li.parent.parent1').width());
       var rightDistance1 = winWidth - offsetLeft1 - objWidth1;

        jQuery('.yutab-nav ul li.parent.parent1 div.dropdown').css({ 'width':winWidth-4 , 'right':-rightDistance1+3 });
  });

با این روش می شه افست پائین رو هم محاسبه کرد ولی در اونصورت بجای ارتفاع پنجره باید ارتفاع سند رو اندازه گیری کنید.

ویرایش شده در توسط iJoomla.org

Share this post


Link to post
Share on other sites

ارسال شده در (ویرایش شده)

بزرگترین نقطه ضعف جوملا!

سالهاست به این فکر میکنم که جوملا چرا بجای JQuery از Mootools استفاده کرد؟

گرچه هنوز به جوابی عقلانی نرسیدم در این رابطه ولی خوشبختانه پاک کردن صورت مسأله کار سختی نیست!

اگه با نوشتن کدهای JQuery مشکل دارید و دنبال راه حل ساده ای برای جلوگیری از تداخل کدهای JQuery و Mootools در وبسایت جوملایی خودتون می گردید این پست رو بخونید.

خیلی ساده بعنوان ابتدایی ترین خط از کدهای JQuery قالبتون این فانکشن رو بنویسید:

$.noConflict();

و بعد از اون در تمام کدهای JQuery، بجای $ از کلمه jQuery استفاده کنید.

مثال:

بجای نوشتن:

$(document).ready(function(){

   // Yutab LI slider behavior
   var itemIndex = 1;
   $('.yutab-li-scroller ul li:nth-child('+itemIndex+')').delay(5000).fadeOut();

   setInterval(function(){
       itemIndex ++;
       if (itemIndex > $('.yutab-li-scroller ul li').length) {
           itemIndex = 1;
       }
       $('.yutab-li-scroller ul li:nth-child('+itemIndex+')').fadeIn(500).delay(5000).fadeOut(500);
   },6100);

الی آخر...

بنویسید:

$.noConflict();

jQuery(document).ready(function(){

   // Yutab LI slider behavior
   var itemIndex = 1;
   jQuery('.yutab-li-scroller ul li:nth-child('+itemIndex+')').delay(5000).fadeOut();

   setInterval(function(){
       itemIndex ++;
       if (itemIndex > jQuery('.yutab-li-scroller ul li').length) {
           itemIndex = 1;
       }
       jQuery('.yutab-li-scroller ul li:nth-child('+itemIndex+')').fadeIn(500).delay(5000).fadeOut(500);
   },6100);

الی آخر...

لازم به ذکر نیست که JQuery چقدر به همه چیز حساسه. پس همه کارهایی رو که گفتم دقیق انجام بدید لطفاً

ویرایش شده در توسط iJoomla.org

Share this post


Link to post
Share on other sites

نوشتن اسکریپت در محتوا یا ماژول های جوملا بصورت مستقیم و بدون استفاده از هیچ افزونه ای

اگه شما هم مثل من از نصب افزونه برای هر کار ریز و درشت روی جوملا اکراه دارید و می خواید بدون کمک هیچ افزونه ای اسکریپت هاتونو مستقیماً توی محتوا یا ماژول HTML دستی جوملا بنویسید کافیه به مدیریت کاربران برید و ویرایشگر اکانت خودتونو روی None یا همون هیچکدام تنظیم کنید. با این روش می تونید به راحتی توی محتوا اسکریپت بنویسید بدون اینکه جوملا لطف کنه و پاکش کنه یا تغییرش بده.

Share this post


Link to post
Share on other sites

یه سوال دارم.آیا طراحی سایت با جوملا بهتره یا با استفاده از محیطهایی مثل دریم ویور و نوشتن دستی کدها؟کدوم بهتره؟

Share this post


Link to post
Share on other sites
یه سوال دارم.آیا طراحی سایت با جوملا بهتره یا با استفاده از محیطهایی مثل دریم ویور و نوشتن دستی کدها؟کدوم بهتره؟

سوالتون ربطی به این تاپیک نداره. بهتر بود توی یه تاپیک جداگانه مطرح می کردید.

مسلما با جوملا بهتره! دلیلش هم اینه که سرعت کارتون بیشتر می شه. نیازی به کدنویسی ندارین(البته این حرف به این معنی نیست که نمی تونید کدنویسی کنید!) و می تونید از افزونه و قالب های رایگان و تجاری بی نهایت جوملا هم استفاده کنید.

Share this post


Link to post
Share on other sites

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری