احيانا يكون هناك مجموعة من المقالات لا نريدها أن تظهر بالصفحة الرئيسية. إما لأسباب تنظيمية او لكونها مقالات غير كاملة او تتبع اقسام داخلية مثل ( فيديو - صور - ...الخ ) او تكون مقالات خاصة او قديمة او أي أسباب اخرى. سنقوم بشرح الطريقة ببساطة بدون الحاجة الي أي إضافات ( تصلح لمن لديهم خبرة متوسطة ولديهم فكرة عن تعديل الملفات )..
اولاً: قم بانشاء تصنيف جديد باي اسم وليكن اسمه مثلا XYZ. بعد ذلك قم بادراج المقالات التي نريد اخفائها تحت هذا التصنيف.
ثانياً: نحتاج الرقم المعرف ID لهذا التصنيف. وذلك عن طريق فتح صفحة التصنيفات. ثم قم بوضع مؤشر الماوس عليه وستجد الرابط يظهر باسفل ثم نجد الرقم المعرف ID مثل هذه الصورة:
فلنفرض مثلاً ان الرقم المعرف ID للتصنيف هو 22
لدينا الان طريقتين اختار منها ما تشاء ..
الطريقة الأولى :
عن طريق فتح ملف index.php في مجلد القالب . ثم إبحث عن الكود التالي:
[php]
if ( have_posts() )
[/php]
غالبا يكون في الاسطر الأولى. ثم قبل هذ الكود مباشرة أضف السطر البرمجي التالي:
[php]
if ( is_home() ) {
query_posts( 'cat=-X' );
}
[/php]
مع استبدال حرف X بالرقم المعرف الخاص بالتصنيف الذي عرفناه في الخطوة السابقة وهو 22
اذا كان هناك تصنيفات اخري تريد ايضا اخفائها نقوم بوضعها مع علامة الفاصلة (،)
اذا فرضنا انهم مثلا : 11 و 22 و 33 قم باضافتها علي النحو التالي:
[php]
if ( is_home() ) {
query_posts( 'cat=-11,-22,-33' );
}
[/php]
الطريقة الثانية:
عن طريق ملف functions.php نقوم بادراج هذا الكود فيه:
[php]
function exclude_category( $query ) {
if ( $query->is_main_query() && $query->is_home() ) {
$query->set( 'cat', '-X' );
}
return $query;
}
add_filter('pre_get_posts', 'exclude_category');
[/php]
واذا اردنا إخفاء عدة تصنيفات نقوم بفصلها بعلامة الفاصلة مثلما شرحنا بالخطوة السابقة.
اترك تعليقك