كيفية إضافة حقوق النسخ لووردبريس

كيفية إضافة النشر والتأليف لووردبريس
كيفية إضافة النشر والتأليف لووردبريس


من الشائع جدًا على شبكة اﻹنترنت أن تظهر في أسفل المواقع حقوق النسخ CopyRight، لكن دائما هناك مشكلة، فأغلب المواقع تُظهرها مصحوبة فقط بالتاريخ الحالي، على سبيل المثال: كل الحقوق محفوظة © 2018.

هكذا نكون قد وضعنا حقوق النسخ فقط للمواضيع المنشورة في العام الحالي. وماذا عن المواضيع التي نشرت في أعوام سابقة، ليس لديك عليها حقوق؟

من المنطقي أن يتم إضافة حقوق النسخ كاملة منذ العام الذي تم فيه نشر أول تدوينة إلى التاريخ الحالي وذلك لضمان حقوق كل المواضيع المنشورة خلال هذه الفترة، شيء كهذا: كل الحقوق محفوظة | سعيد البقالي © 2012-2020.

اقرأ أيضا: الدليل الشامل لأنواع المقالات المخصصة في ووردبريس

للحصول على هذه النتيجة قمت بكتابة دالة تجلب السنة التي تم فيها نشر أول تدوينة من قاعدة البيانات ثم مقارنته مع السنة الحالية، في حالة التساوي، أي أن الموقع جديد ولم يمر على إنشاء أكثر من سنة، يتم عرض السن الحالية فقط، أما في حالة العكس فيتم عرض التاريخ منذ السنة التي تم فيها نشر أول تدوينة إلى السنة الحالية، شيء كهذا:

كل الحقوق محفوظة – [اسم الموقع] © [التاريخ]

قم بإضافة هذا الكود إلى ملف functions.php للقالب المفعّل أو لإضافتك المخصصة.

اقرأ أيضا: جديد ووردبريس 4.3 “Billie”

/**
 * Get footer credits text
 *
 * @param array $args
 * @return string
 */
function sb_get_footer_credits_text( $args = array() ) {

    global $wpdb;

    $defaults = array(
        'first_year'      => get_transient( 'sb_get_first_year' ),
        'current_year'    => date( 'Y' ),
        'symbol'          => '©',
        'text'            => esc_html__( 'All right reserved', 'text-domain' ),
        'site_name'       => get_bloginfo( 'name' ),
        'text_separator'  => ' | ',
        'years_separator' => '-',
    );

    extract( apply_filters( 'sb_footer_credits_args', wp_parse_args( (array) $args, $defaults ) ) );

    if ( false === $first_year ) {

        $sql = "SELECT YEAR(min(post_date_gmt))
                AS first_year
                FROM $wpdb->posts
                WHERE post_status = 'publish'";

        if ( false === $first_year ) {
            $post_date_gmt = $wpdb->get_results( $sql ); // WPCS: cache ok. db call ok. unprepared SQL OK.

            if ( is_array( $post_date_gmt ) ) {
                set_transient( 'sb_get_first_year', $post_date_gmt[0]->first_year, MONTH_IN_SECONDS );
                unset( $post_date_gmt );
            }
        }
    }

    $output = $text . $text_separator . $site_name . ' ' . $symbol . ' ';

    if ( $current_year !== $first_year ) {

        $years = $first_year . $years_separator . $current_year;

        $output .= $years;
    } else {
        $output .= $current_year;
    }

    return apply_filters( 'sb_footer_credits_text', $output );
}

بعد حفظ التغييرات في ملف functions.php عليك فتح ملف footer.php ووضع الكود التالي في المكان المناسب.

<?php echo esc_html( sb_get_footer_credits_text() ); ?>

إذا أردت التغيير في القيم الافتراضية للدالة عن طريق تمرير مصفوفة لها بقيم مخصصة كالتالي:

$args = array(
     'first_year'      => '2012',
     'current_year'    => '2018',
     'symbol'          => '©',
     'text'            => 'كل الحقوق محفوطة',
     'site_name'       => 'إسم الموقع',
     'text_separator'  => ' | ',
     'years_separator' => '-',
 );
 echo esc_html( sb_get_footer_credits_text( $args ) );

كذلك يمكنك تغيير القيم اﻹفتراضية للدالة عن طريق المرشح (filter) sb_footer_credits_args وذلك على النحو التالي:

اقرأ أيضا: كيف يمكنك استبعاد تصنيف من الودجة تصنيفات على ووردبريس

/**
 Change copyrght args via filter
 *
 @param array $copyright
 @return void
 */
 function sb_change_footer_credits_args( $args ) {
 $args['first_year'] = '1820';
 $args['text']       = 'جميع الحقوق محفوطة';
 $args['site_name'] = 'موقعي الجميل';
 return $args;
 }
 add_filter( 'sb_footer_credits_args', 'sb_change_footer_credits_args' ); 

كذلك يمكنك التعديل على النص كليا أو حذفه بواسطة المرشح sb_footer_credits_text، يمكنك استخدامه على سبيل المثال لرفع الحقوق عن صفحات ومقالات معينة، على هذا الشكل:

/**
 * Change or hide copyrght via filter
 *
 * @param string $output
 * @return void
 */
function sb_filter_footer_credits_text( $output ) {

	if ( is_single( array( 85, 56, 64 ) ) ) {
		return 'هذه المقالة لا تتوفر على حقوق النقل والتأليف';
	}

	if ( is_single( array( 67, 24, 37 ) ) ) {
		return 'حقوق النشر و التأليف لهذه الصفحة مختلفة';
	}

	if ( is_page( array( 55, 44, 55 ) ) ) {
		return;
	}
}
add_filter( 'sb_footer_credits_text', 'sb_filter_footer_credits_text' );

الهدف اﻷساسي من هذا النوع من الشروحات التي أنشرها هو محاولة إيصال بعض الأفكار التي يمكن تطبيقها على ووردبريس والتعريف بقدراته وإمكانياته، بقليل من المعرفة بلغة الـ PHP ونواة ووردبريس يمكننا التغيير والتعديل على أي شيء تقريبا والوصول إلى النتيجة التي نريدها.

إذا أعجبك الموضوع لا تبخل عليّ برأيك من خلال التعليقات.

اقرأ أيضا: كيفية عرض مواضيع تابعة لنفس الكاتب في ووردبريس

close

قم بالتسجيل على قائمتي البريدية لكي تكون من الأوائل في الحصول على تدوينات وشروحات حصرية

أنا لا أرسل أبدا البريد المزعج! اقرأ سياسة الخصوصية لمزيد من المعلومات.

8 تعليقات

  1. بارك الله فيك اخي سعيد
    اتمنا ان تضع لنا فيديو مبسط ان كيفية
    استعمال هته الاكواد
    اجد بعض التطبيقات في متجر لاكن لا اعرف عمل هته الاكواد
    صحا فطورك

اترك تعليقًا

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *