توضیحات دستهبندی در وردپرس معمولاً در بالای صفحه دستهبندی نمایش داده میشود. این توضیحات نهتنها از نظر سئو مهم هستند، بلکه تجربه کاربری در وردپرس را نیز بهبود میبخشند. اما در برخی موارد، ممکن است بخواهید مکان توضیحات دستهبندی را تغییر دهید و آن را بعد از لیست مطالب قرار دهید.
در این آموزش، روشهای مختلفی برای تغییر مکان توضیحات دستهبندی در وردپرس بررسی خواهیم کرد. این روشها شامل ویرایش فایل category.php، استفاده از هوکهای وردپرس و استایلدهی مناسب برای نمایش بهتر توضیحات هستند.

نحوه نمایش پیشفرض توضیحات دستهبندی در وردپرس
در وردپرس، توضیحات دستهبندی معمولاً در بالای صفحه دستهبندی نمایش داده میشود. این توضیحات در قالبها از طریق تابع زیر قابل نمایش است:
<?php if (category_description()) : ?>
<div class="category-description">
<?php echo category_description(); ?>
</div>
<?php endif; ?>
بسیاری از قالبهای وردپرس این کد را در بالای صفحه دستهبندی (category.php) قرار میدهند. اگر بخواهید مکان این توضیحات را تغییر دهید، نیاز به ویرایش این فایل دارید.
خب بیایید قبل از این کار روش شروع کنیم به شما تصویر قبل وبعد از عمل را نشان بدهیم تا یک دید کلی در خصوص کار و هدفی که قرار است به آن برسیم داشته باشید:
قبل از عمل(نمایش توضیحات قبل از مطالب) :

بعد از عمل(نمایش توضیحات بعد از مطالب) :

تغییر مکان توضیحات دستهبندی در category.php
برای تغییر موقعیت توضیحات دستهبندی، ابتدا به مسیر فایل های قالب سایت خود رفته و فایل category.php را ویرایش کنید.
انتقال توضیحات به پایین لیست مطالب
بهطور پیشفرض، توضیحات قبل از نمایش نوشتهها قرار دارند. برای نمایش آن بعد از لیست مطالب، کد را به پایین حلقه پستها منتقل کنید.
کد قبل از تغییر (توضیحات در بالای صفحه دستهبندی)
<?php get_header(); ?>
<h1><?php single_cat_title(); ?></h1>
<?php if (category_description()) : ?>
<div class="category-description">
<?php echo category_description(); ?>
</div>
<?php endif; ?>
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<h2><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h2>
<p><?php the_excerpt(); ?></p>
<?php endwhile; endif; ?>
<?php get_footer(); ?>
کد بعد از تغییر (انتقال توضیحات به پایین صفحه دستهبندی)
<?php get_header(); ?>
<h1><?php single_cat_title(); ?></h1>
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<h2><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h2>
<p><?php the_excerpt(); ?></p>
<?php endwhile; endif; ?>
<?php if (category_description()) : ?>
<div class="category-description">
<?php echo category_description(); ?>
</div>
<?php endif; ?>
<?php get_footer(); ?>
با این تغییر، توضیحات دستهبندی بعد از لیست مطالب نمایش داده خواهد شد.
تغییر مکان توضیحات دستهبندی بدون ویرایش category.php (با استفاده از هوکها)
اگر نمیخواهید فایل category.php را مستقیماً ویرایش کنید، میتوانید از هوکهای وردپرس استفاده کنید.
جابجایی توضیحات با remove_action و add_action
کد زیر را در فایل functions.php قالب خود اضافه کنید:
function move_category_description() {
if (is_category()) {
remove_action('archive_description', 'category_description'); // حذف توضیحات پیشفرض
add_action('loop_end', 'custom_category_description'); // اضافه کردن توضیحات بعد از لیست نوشتهها
}
}
add_action('template_redirect', 'move_category_description');
function custom_category_description() {
if (is_category() && category_description()) {
echo '<div class="category-description">';
echo '<h3>درباره این دستهبندی:</h3>';
echo '<p>' . category_description() . '</p>';
echo '</div>';
}
}
این کد باعث میشود توضیحات دستهبندی بعد از لیست نوشتهها نمایش داده شود، بدون نیاز به تغییر فایل category.php.
استایلدهی به توضیحات دستهبندی برای نمایش زیباتر
بعد از تغییر مکان، ممکن است نیاز به استایلدهی برای بهبود ظاهر توضیحات داشته باشید. کد زیر را در فایل style.css اضافه کنید:
.category-description {
background: #f8f8f8;
padding: 15px;
margin-top: 20px;
border-radius: 5px;
font-size: 16px;
color: #333;
}
.category-description h3 {
font-size: 20px;
margin-bottom: 10px;
color: #555;
}
سوالات متداول
۱. چرا توضیحات دستهبندی من نمایش داده نمیشود؟
مطمئن شوید که توضیحات را از بخش “دستهها” در پیشخوان وردپرس وارد کردهاید. همچنین بررسی کنید که قالب شما از category_description() پشتیبانی میکند.همچنین می توانید به آموزش نمایش توضیحات دسته بندی در وردپرس سری بزنید.در این آموزش پاسخ سوال شما و راه های حل این مشکل را را به طور مفصل داده ایم.
۲. آیا میتوانم توضیحات را فقط برای برخی از دستهها نمایش دهم؟
بله، میتوانید از شرط if برای بررسی ID دستهبندی استفاده کنید:
if (is_category(array(1, 2, 3))) { echo category_description(); }
دراینجا دستههای با آیدی ۱، ۲ و ۳ نمایش داده میشوند.برای این که بتوانید ID دسته بندی خود را پیدا کنید و از آن استفاده کنید می توانید به آموزش پیدا کردن آیدی در وردپرس سری بزنید.در این آموزش به شما یاد داده ایم چگونه به راحتی آیدی دسته بندی خود و هر مطلب دیگری در سایت خود را به راحتی پیدا کنید.
۳. آیا تغییر مکان توضیحات دستهبندی بر سئو تأثیر دارد؟
بله، قرار دادن توضیحات بعد از لیست مطالب ممکن است نرخ کلیک و تعامل کاربران را افزایش دهد و به سئو کمک کند.