חיפוש ]

ארכיונים: סניפטים וקטעי קוד | עמוד 9

הוספת CSS לממשק הניהול של וורדפרס (Admin Area)

בכדי לבצע זאת הוסיפו את הקוד הבא לקובץ functions.php ושנו את ה CSS בהתאם. אגב אם אתם מעוניינים לדעת מהי הדרך הנכונה להוסיף נכסים (קבצי CSS ו JS לממשק הניהול של וורדפרס – תנו מבט בפוסט הדרך הנכונה לטעון סקריפטים [...]

בכדי לבצע זאת הוסיפו את הקוד הבא לקובץ functions.php ושנו את ה CSS בהתאם. אגב אם אתם מעוניינים לדעת מהי הדרך הנכונה להוסיף נכסים (קבצי CSS ו JS לממשק הניהול של וורדפרס – תנו מבט בפוסט הדרך הנכונה לטעון סקריפטים בממשק הניהול של וורדפרס.

function my_custom_fonts() {
    echo '<style>
    body {
      font-size: 12px;
    } 
  </style>';
}

add_action('admin_head', 'my_custom_fonts');

שינוי אייקונים בעמוד התשלום של ווקומרס

הנה דוגמה לכיצד לשנות את האייקון הדיפולטיבי של פייפאל בעמוד התשלום של ווקומרס. הנה דוגמה חיה: <?php /** * Add custom gateway icons * * @param string $icon Image HTML. * @param string $gateway_id Gateway ID. * * @return string [...]

הנה דוגמה לכיצד לשנות את האייקון הדיפולטיבי של פייפאל בעמוד התשלום של ווקומרס. הנה דוגמה חיה:

<?php
/**
 * Add custom gateway icons
 * 
 * @param  string $icon       Image HTML.
 * @param  string $gateway_id Gateway ID.
 * 
 * @return string
 */
function custom_wc_gateway_icons( $icon, $gateway_id ) {
	// Example for PayPal:
	if ( 'paypal' == $gateway_id ) {
		$icon = '<img src="' . WC_HTTPS::force_https_url( 'http://your-site.com/image.png' ) . '" alt="' . __( 'PayPal' ) . '" />'
	}
	return $icon;
}
add_filter( 'woocommerce_gateway_icon', 'custom_wc_gateway_icons', 10, 2 );

שינוי מספר הפריטים בעמוד ההזמנות של ווקומרס

בכדי לשנות את מספר הפריטים בעמוד ההזמנות של ווקומרס (ב Front) ניתן להשתמש בקוד הבא כאשר X הוא מספר הפריטים המקסימלי שיוצג (functions.php): function custom_my_account_orders( $args ) { $args['posts_per_page'] = X; return $args; } add_filter( 'woocommerce_my_account_my_orders_query', 'custom_my_account_orders', 10, 1 ); [...]

בכדי לשנות את מספר הפריטים בעמוד ההזמנות של ווקומרס (ב Front) ניתן להשתמש בקוד הבא כאשר X הוא מספר הפריטים המקסימלי שיוצג (functions.php):

function custom_my_account_orders( $args ) {
    $args['posts_per_page'] = X;
    return $args;
}
add_filter( 'woocommerce_my_account_my_orders_query', 'custom_my_account_orders', 10, 1 );

עוד על ניהול וטיפול בהזמנות באתרי ווקומרס תמצאו בפוסט טיפול וניהול הזמנות (Orders) באתרי ווקומרס.

הוספת קישור לפירורי הלחם של Yoast SEO

נאמר ואתם רוצים להוסיף קישור לבלוג בפיקוקי הלחם של Yoast לאחר הקישור הראשוני המפנה לעמוד הבית, ניתן לעשות זאת בצורה הבאה. הוסיפו את הקוד לקובץ functions.php: function yoast_seo_breadcrumb_append_link( $links ) { global $post; $breadcrumb[] = array( 'url' => site_url( '/blog/' [...]

נאמר ואתם רוצים להוסיף קישור לבלוג בפיקוקי הלחם של Yoast לאחר הקישור הראשוני המפנה לעמוד הבית, ניתן לעשות זאת בצורה הבאה. הוסיפו את הקוד לקובץ functions.php:

function yoast_seo_breadcrumb_append_link( $links ) {
    global $post;
        $breadcrumb[] = array(
            'url' => site_url( '/blog/' ),
            'text' => 'Blog',
        );
        array_splice( $links, 1, -2, $breadcrumb );
    return $links;
}
add_filter( 'wpseo_breadcrumb_links', 'yoast_seo_breadcrumb_append_link' );

הנה מאמר רחב יותר המסביר על כיצד להוסיף פירורי לחם באתרי וורדפרס…

כיצד להגדיל Maximum Execution Time באתרי וורדפרס

אולי נתקלתם בהודעה "Maximum execution time of 30 seconds exceeded". הודעה זו אומרת כי לפעולה שאתם מבצעים לוקח זמן רב יותר להתבצע מהמותר. ישנן מספר דרכים לטפל בכך: 1. לערוך את wp-config.php הוסיפו את הקוד הבא ל wp-config.php: set_time_limit(200); 2. [...]

אולי נתקלתם בהודעה "Maximum execution time of 30 seconds exceeded". הודעה זו אומרת כי לפעולה שאתם מבצעים לוקח זמן רב יותר להתבצע מהמותר. ישנן מספר דרכים לטפל בכך:

1. לערוך את wp-config.php

הוסיפו את הקוד הבא ל wp-config.php:

set_time_limit(200);

2. ערכו את הקובץ htaccess

וודאו כי אתם מגבים קובץ זה לפני והוסיפו את הקוד הבא:

php_value max_execution_time 200

3. ערכו את הקובץ php.ini

הוסיפו את השורה הבאה לקובץ php.ini:

max_execution_time = 200

אם זה לא עובד נסו להתייעץ עם חברת האחסון שלכם…

מעבר לכך, אם אתם מעוניינים בטיפים ואפשרויות מעניינות המתבצעות דרך הקובץ wp-config.php תנו מבט בפוסט אופטימיזציה לקונפיגורציה של וורדפרס באמצעות wp-config.php.

הסרת פירורי לחם של ווקומרס בעמודים מסויימים

אם אתם מחפשים דרך להסיר את פירורי הלחם (Breadcrumbs) באתרים העובדים עם ווקומרס, תוכלו לעשות זאת בצורה הבאה: /** * Remove the breadcrumbs */ function savvy_remove_shop_breadcrumbs() { if (is_shop()) { remove_action('woocommerce_before_main_content', 'woocommerce_breadcrumb', 20); } } add_action('init', 'savvy_remove_shop_breadcrumbs'); קוד זה יסיר [...]

אם אתם מחפשים דרך להסיר את פירורי הלחם (Breadcrumbs) באתרים העובדים עם ווקומרס, תוכלו לעשות זאת בצורה הבאה:

/**
 * Remove the breadcrumbs
 */
function savvy_remove_shop_breadcrumbs() {
    if (is_shop()) {

        remove_action('woocommerce_before_main_content', 'woocommerce_breadcrumb', 20);
    }
}
add_action('init', 'savvy_remove_shop_breadcrumbs');

קוד זה יסיר את פירורי הלחם בעמוד החנות הראשי אך אתם יכולים להשתמש בכל תנאי אחר עבור סוגי עמודים אחרים.

הגבלת העלאה של סוגי קבצים מסויימים בוורדפרס

הדוגמה הבאה תגביל את אפשרות העלאת הקבצים בספריית המדיה רק עבור קבצי JPG ו GIF. אם אתם מעוניינים לאפשר גם קבצי PNG לצורך העניין הוסיפו את השורה 'png' => 'image/png' לקוד זה: function savvy_restrict_mime($mimes) { $mimes = array( 'jpg|jpeg|jpe' => 'image/jpeg', [...]

הדוגמה הבאה תגביל את אפשרות העלאת הקבצים בספריית המדיה רק עבור קבצי JPG ו GIF. אם אתם מעוניינים לאפשר גם קבצי PNG לצורך העניין הוסיפו את השורה 'png' => 'image/png' לקוד זה:

function savvy_restrict_mime($mimes) {
    $mimes = array(
        'jpg|jpeg|jpe' => 'image/jpeg',
        'gif' => 'image/gif',
    );
    return $mimes;
}
add_filter('upload_mimes','savvy_restrict_mime');

קצת יותר על הנושא תמצאו בפוסט כיצד לאפשר העלאת סוגי קבצים נוספים בוורדפרס?.

הוספת קישור לפוסט המלא בתקציר הפוסט

אם אתם מעוניינים להוסיף קישור לפוסט המלא בסוף תקציר (excerpt) הפוסט, ניתן לעשות זאת בצורה הבאה. הוסיפו את הקוד הבא לקובץ functions.php: function savvy_excerpt_link_post($text) { return str_replace( '[...]', '<a href="'. get_permalink( get_the_ID() ) . '" title="' . esc_attr( get_the_title( get_the_ID() [...]

אם אתם מעוניינים להוסיף קישור לפוסט המלא בסוף תקציר (excerpt) הפוסט, ניתן לעשות זאת בצורה הבאה. הוסיפו את הקוד הבא לקובץ functions.php:

function savvy_excerpt_link_post($text) {
    return str_replace( '[...]', '<a href="'. get_permalink( get_the_ID() ) . '" title="' . esc_attr( get_the_title( get_the_ID() ) ) . '">' . '[&hellip;]' . '</a>', $text );
}
add_filter('the_excerpt', 'savvy_excerpt_link_post');

כיצד לאפשר Inline SVG בעורך התוכן של וורדפרס

כברירת מחדל, וורדפרס אינה מאפשרת את כול סוגי הקוד בעורך התוכן של וורדפרס. למשל, Inline SVG's מכילים המון תגיות כגון , וכדומה. אז בכדי לאפשר Inline SVG יש להשתמש בקוד הבא (functions.php): function override_mce_options($initArray) { $opts = '*[*]'; $initArray['valid_elements'] = [...]

כברירת מחדל, וורדפרס אינה מאפשרת את כול סוגי הקוד בעורך התוכן של וורדפרס. למשל, Inline SVG's מכילים המון תגיות כגון , וכדומה. אז בכדי לאפשר Inline SVG יש להשתמש בקוד הבא (functions.php):

function override_mce_options($initArray) {
    $opts = '*[*]';
    $initArray['valid_elements'] = $opts;
    $initArray['extended_valid_elements'] = $opts;
    return $initArray;
}
add_filter('tiny_mce_before_init', 'override_mce_options');

שימו לב כי קוד זה מאפשר שימוש בכל תגית, לא משנה איזה – בין אם הקשורה ל SVG ובין אם לא.

מקבלים HTTP Error כשאתם מעלים תמונות באתר וורדפרס?

ישנם מספר סיטואציות בהן תקבלו את השגיאה HTTP Error כשאתם מנסים להעלות תמונות לספריית המדיה באתר וורדפרס: שם קובץ בעייתי (סימנים מיוחדים וכדומה). משקל הקובץ הוא מעבר למה שהשרת מאפשר (upload_max_size). זכרון PHP בשרת אינו מספיק. אין מספיק שטח אחסון [...]

ישנם מספר סיטואציות בהן תקבלו את השגיאה HTTP Error כשאתם מנסים להעלות תמונות לספריית המדיה באתר וורדפרס:

  • שם קובץ בעייתי (סימנים מיוחדים וכדומה).
  • משקל הקובץ הוא מעבר למה שהשרת מאפשר (upload_max_size).
  • זכרון PHP בשרת אינו מספיק.
  • אין מספיק שטח אחסון בשרת.
מקבלים HTTP Error כשאתם מעלים תמונות באתר וורדפרס?

שגיאת HTTP בספריית המדיה של וורדפרס.

אז בתור התחלה בדקו את שם הקובץ ונסו להקטין את משקל הקובץ. בכדי להגדיל את הזיכרון הוסיפו את הקוד הבא לקובץ wp-config.php הנמצא בתיקייה הראשית של האתר:

define( 'WP_MEMORY_LIMIT', '256M' );

ניתן גם לעשות זאת דרך קובץ .htaccess, אך במידה וחברת האחסון שלכם חוסמת אפשרות זו תקבלו שגיאה 500 (Internal Server Error), אז שימו לב ואל תבצעו בדרך זו אם זה המצב (פשוט מחקו את השורה).

php_value memory_limit 256M

אם יש לכם גישה לקובץ php.ini אז ניתן לעשות זאת על ידי הקוד הבא:

memory_limit = 256M

במצבים מסויימים גם ModSecurity בשרת יכול למנוע מכם להעלות קבצים. ניתן לבטל אותו דרך cPanel או לנסות את השורות הבאות בקובץ .htaccess (בטלו אם מופיעה שגיאה). נציין כי ישנה סיבה טובה ש ModSecurity קיים לטובת אבטחת אתר הוורדפרס שלכם:

SecFilterEngine Off 
SecFilterScanPOST Off 

הנה פוסט רחב יותר המדבר על פתרון בעיות בהעלאת תמונות לאתרי וורדפרס. תנו מבט!

Savvy WordPress Development