جوملا 1.0 مشکلات بسیاری در php 5.3.0 دارد که کاربران بسیاری این مشکلات را گزارش نموده اند.
هم اکنون برای وب سایت ها زمان آن رسیده به نسخه های بالاتر به روز رسانی شوند، زیرا نسخه 1.0 جوملا جزو نسخه هایی است که پشتیبانی نمی شود و باگ های بسیاری در آن وجود دارد. برای رویت آخرین نسخه جوملا به سایت رسمی http://joomla.org مراجعه نمایید.
پس از به روز رسانی نسخه php سرور به 5.3 و بالاتر مشکلات فراوانی در سایت جوملا نسخه 1.0 به وجود می آید که برای رفه مشکلات مواردی را در این مقاله برای شما بیان می نمایم. البته باز هم اعلام می نمایم که حتما جوملای خود را به آخرین نسخه به روز رسانی نمایید.
برای سازگاری جوملا 1.0 با php 5.3 موارد زیر را می بایست در سایت انجام دهید
در صورتی که مطالب در اکثر صفحات سایت نمایش داده نمی شود فایل Function.php موجود در آدرس /public_html/includes/Cache/Lite باز نموده.
جا گذاری نمایید:
$arguments = func_get_args();
با
$arguments = func_get_args();
$numargs = func_num_args();
for($i=1; $i < $numargs; $i++){
$arguments[$i] = &$arguments[$i];
}
برای رفع مشکل تماس با ما جوملا VCARD.CLASS.PHP ERROR کامپوننت COM_CONTACT نمایش به صورت سفید
برای رفع مشکل کامپوننت com_contact در صورتی که در سایت صفحه تماس با ما به صورت سفید نمایش داده می شود و در کنترل پنل خطای زیر را در تماس با ما مشاهده می نمایید:
Fatal error: Cannot redeclare quoted_printable_encode() in includes/vcard.class.php on line 74
فایل در آدرس includes/vcard.class.php را باز نموده و در خط 36 آن تابع quoted_printable_encode را بیابید. خطای اعلام شده تکرار تعریف این تابع می باشد برای جلوگیری از این اتفاق از تابع function_exists برای بررسی اینکه تابع قبلا تعریف شده و یا خیر استفاده نمایید.
if(!function_exists("quoted_printable_encode")) { // این بخش اضافه شود
function quoted_printable_encode($input, $line_max=76) {
/* ... */
}
} // این بخش اضافه شود
زمان جوملا
تغییر جدیدی که در php 5.3 به وجود آمده نحوه تعریف زمان می باشد.
بهترین روشی که برای این مورد پیشنهاد می نمایم استفاده از .htaccess جهت تعریف زمان پیش فرض می باشد. کد زیر را به htaccess سایت خود اضافه نمایید:
# set the server timezone
SetEnv TZ Australia/Victoria
DEPRECATED: FUNCTION EREGI() IS DEPRECATED IN INCLUDES/SEF.PHP ON LINE 533
در نسخه های جدید php علکرد تابع eregi با استفاده از تابع preg_match می باشد. بنابراین می بایست بخش هایی از سایت که از این مورد استفاده شده اصلاح گردد.
برای رفع مشکل تغییرات زیر را در فایل انجام دهید:
Line 370:
WAS:
if ($juri != "" && $juri != "/" && !eregi( "index\.php", $_SERVER["REQUEST_URI"] ) && !eregi( "index2\.php", $_SERVER["REQUEST_URI"] ) && !eregi( "/\?", $_SERVER["REQUEST_URI"] ) && $_SERVER["QUERY_STRING"] == "" ) {
BECOMES:
if ($juri != "" && $juri != "/" && !preg_match( "index\.php/i", $_SERVER["REQUEST_URI"] ) && !preg_match( "index2\.php/i", $_SERVER["REQUEST_URI"] ) && !preg_match( "/\?/i", $_SERVER["REQUEST_URI"] ) && $_SERVER["QUERY_STRING"] == "" ) {
-----------------------------------------
Line 388:
WAS:
if( $mosConfig_sef && $mosConfig_multilingual_support && $string!="index.php" && !eregi("^(([^:/?#]+):)",$string) && !strcasecmp(substr($string,0,9),"index.php") && !eregi("lang=", $string) ) {
BECOMES:
if( $mosConfig_sef && $mosConfig_multilingual_support && $string!="index.php" && !preg_match("^(([^:/?#]+):)/i",$string) && !strcasecmp(substr($string,0,9),"index.php") && !preg_match("lang=/i", $string) ) {
-----------------------------------------
Line 393:
WAS:
if ($mosConfig_sef && !eregi("^(([^:/?#]+):)",$string) && !strcasecmp(substr($string,0,9),"index.php")) {
BECOMES:
if ($mosConfig_sef && !preg_match("/^(([^\/:?#]+):)/i",$string) && !strcasecmp(substr($string,0,9),"index.php")) {
-----------------------------------------
Line 409:
WAS:
if (preg_match("@^[A-Za-z][A-Za-z0-9:_.-]*$@", $url["fragment"])) {
BECOMES:
if (preg_match("@^[A-Za-z][A-Za-z0-9:_.-]*$@/i", $url["fragment"])) {
-----------------------------------------
Line 533:
WAS:
eregi("^(https?:[\/]+[^\/]+)(.*$)", $mosConfig_live_site, $live_site_parts);
BECOMES:
preg_match("/^(https?:[\/]+[^\/]+)(.*$)/i", $mosConfig_live_site, $live_site_parts);
منبع:http://sitedesign.joomir.com/طراحی-سایت-جوملا/item/766-php-53-joomla-10.html
جهت نمایش تصویر در لیست دسته بندی های مقالات در جوملا در فایل زیر:
components\com_content\views\categories\tmpl\default_items.php
کد زیر را درج نمایید:
<div class="item-image">
<?php echo "<img src="".json_decode($item->params)->image . "" />"; ?>
</div>
منبع:
برای ساخت قالب جوملا 3 راحترین راه را به شما نشان می دهم. برای ساخت قالب جوملا 3 کافی است قالب خالی جوملا را از سایت http://blank.vc/دانلود نموده و فایل مورد نظر را بر روی کامپیوتر خود از حالت فشرده خارج سازید. سپس فایل templateDetails.xml را باز نموده و در بخش نام قالب خود را درج نموده و سایر اطلاعات را همینطور تکمیل نمایید پس از انجام تغییرات فایل را ذخیره نمایید و محتوای فلدر از حالت فشرده خارج شده را دوباره فشرده سازه نمایید. فرمت فایل فشرده شما می بایست zip باشد. پس از انجام این کار کافی است فایل مورد نظر را در جوملا نصب نمایید. این قالب خالی جوملا می باشد بنابراین پس نصب و انتخاب قالب به عنوان پیش فرض کافی است قالب را تکمیل نمایید. این قالب با موارد پیش فرض مورد نیاز برای جوملا تهیه شده بنابراین کافی است قالب سایت را مطابق به نظرات خود طراحی نمایید. همچنین در این قالب پایه های ایجاد نسخه موبایل وب سایت ایجاد گردیده بنابراین کافی است css مربوط به سایت را ایجاد نمایید.
همچنین در این قالب کتابخانه های Modernizr, jQuery, SASS & LESS و PIE ضمیمه شده بنابراین می توانید از تکنولوژی های html5 و css3 استفاده نمایید.
منبع:
http://sitedesign.joomir.com/طراحی-سایت-جوملا/item/701-ساخت-قالب-جوملا-3.html
لیست کل یادداشت های این وبلاگ