amir68

مشکلات تاکسونومی جدید

74 پست در این موضوع قرار دارد

سلام

1. در custom taxonomy دسته هایی را ایجاد کرده ام و نوشته هایی مربوط به هر دسته نوشته ام. نوشته ها نمایش داده می شوند، اما بر روی لینک دسته ها که کلیک می شود، ارور 404 مواجه می شوم. لطفا راهنمایی کنید ..

2. با استفاده از تابع wp_insert_post میخوام در همان تاکسونومی جدید نوشته ارسال بشه. اما هر کاری میکنم، در لیست نوشته ها در پنل، تاکسونومی مربوطه خالی میمونه و نوشته به اون دسته تعلق نمیگیره ...

0

به اشتراک گذاری این پست


لینک به پست

1. ساختار پیوند یکتا را یکبار دیگر به روز کنید تا کدهای لازم به htaccess اضافه شود

2. آرایه ی اضافه کردن تاکسونامی به مطلب


'tax_input' => array( 'TAX' => array ( $_POST['new_tax']) )

TAX نام تاکسونامی

new_tax نام فیلد در فرم

5

به اشتراک گذاری این پست


لینک به پست

ممنونم استاد

مشکل دوم حل شد

پیوندهای یکتا رو دوباره ذخیره کردم .. اما تغییری ایجاد نشد .. پرمیشن .htaccess هم 644 هستش ..

0

به اشتراک گذاری این پست


لینک به پست

لینک دسته ها را چجوری ایجاد کردید؟

1

به اشتراک گذاری این پست


لینک به پست

با wp_list_categories


<?php $args_show_kalam_auth = array(
'show_option_all' => '',
'orderby' => 'name',
'order' => 'ASC',
'style' => 'list',
'show_count' => 1,
'hide_empty' => 1,
'use_desc_for_title' => 1,
'child_of' => 0,
'feed' => '',
'feed_type' => '',
'feed_image' => '',
'exclude' => '',
'exclude_tree' => '',
'include' => '',
'hierarchical' => 1,
'title_li' => __( '' ),
'show_option_none' => __( 'No categories' ),
'number' => null,
'echo' => 1,
'depth' => 0,
'current_category' => 0,
'pad_counts' => 0,
'taxonomy' => 'kalam_auth',
'walker' => null
); ?>

<?php wp_list_categories( $args_show_kalam_auth ); ?>

0

به اشتراک گذاری این پست


لینک به پست

از تابع


<?php
$taxonomy = 'my_taxonomy';
$term = 'term1';
get_term_link( $term, $taxonomy ); ?>

استفاده کنید

و باید یک صفحه هم با استفاده از کدهای category.php یا archive.php به نام taxonomy-my_taxonomy.php بسازید که my_taxonomy اسم تاکسونامی شماست

1

به اشتراک گذاری این پست


لینک به پست

این تابع نیز لینک هایی با همون آدرس میسازه که به مشکل قبلی برمیخوره. اون فایل رو هم ساختم ..

برای دیدن مشکل این لینک رو لطفا ببینید .. در سایدربار بر روی هر کدوم از دسته ها کلیک میشه، میره به 404 ..

0

به اشتراک گذاری این پست


لینک به پست

بعد از ساختن فایل هم یاید پیوند یکتا را به روز کنید

برای دیدن مشکل این لینکرو لطفا ببینید .. در سایدربار بر روی هر کدوم از دسته ها کلیک میشه، میره به 404 ..

post-336-0-09122700-1403035472_thumb.jpg

مشکلی نداره

1

به اشتراک گذاری این پست


لینک به پست

اون صفحه مربوط به وردپرس هست که جزء دسته های سایت هست نه تاکسونومی جدید ..

لینک هایی که الان به 404 میخورن مثلا: اینجا و اینجا

0

به اشتراک گذاری این پست


لینک به پست
برای دیدن مشکل این لینکرو لطفا ببینید .. در سایدربار بر روی هر کدوم از دسته ها کلیک میشه، میره به 404 ..

لینکتون صفحه ی تاکسونامی را تشخیص می ده موقع ساخت پست تایپ اونرو برای بایگانی باز نکردید

کدهای ساخت تاکسونامی را بگذارید اینجا

1

به اشتراک گذاری این پست


لینک به پست

ارسال شده در (ویرایش شده)


// Register Custom Taxonomy --- kalam_auth
function func_tax_kalam_auth() {
$labels_tax_kalam_auth = array(
'name' => _x( 'نویسنده های کلام', 'Taxonomy General Name' ),
'singular_name' => _x( 'نویسنده کلام', 'Taxonomy Singular Name' ),
'menu_name' => __( 'نویسنده کلام' ),
'all_items' => __( 'تمامی دسته ها' ),
'parent_item' => __( 'دسته والد' ),
'parent_item_colon' => __( 'دسته والد' ),
'new_item_name' => __( 'نام دسته جدید' ),
'add_new_item' => __( 'افزودن دسته جدید' ),
'edit_item' => __( 'ویرایش دسته' ),
'update_item' => __( 'به روزرسانی دسته' ),
'separate_items_with_commas' => __( 'Separate genres with commas' ),
'search_items' => __( 'جستجوی دسته های کلام' ),
'add_or_remove_items' => __( 'افزودن یا حذف دسته های کلام' ),
'choose_from_most_used' => __( 'انتخاب از دسته های کلام بیشتر استفاده شده' ),
);

$args_tax_kalam_auth = array(
'labels' => $labels_tax_kalam_auth, 'hierarchical' => true,
'public' => true, 'show_ui' => true,
'show_admin_column' => true,
'show_in_nav_menus' => true,
'show_tagcloud' => true
);
register_taxonomy( 'kalam_auth', 'kalam', $args_tax_kalam_auth );

}
// Hook into the 'init' action
add_action( 'init', 'func_tax_kalam_auth', 0 );

ویرایش شده در توسط amir68
0

به اشتراک گذاری این پست


لینک به پست

اسم تاکسونامیتون اگرkalam_auth است :


register_taxonomy( 'kalam_auth', array( 'post' ), $args_tax_kalam_auth );

و


'name' => _x( 'نویسنده های کلام', 'Taxonomy General Name' ),
'singular_name' => _x( 'نویسنده کلام', 'Taxonomy Singular Name' ),

نباید فارسی باشند


'name' => _x( 'kalam', 'Taxonomy General Name' ),
'singular_name' => _x( 'kalam', 'Taxonomy Singular Name' ),

البته بقیه هم نباید فارسی باشند ولی در کارکرد چندان تاثیری ندارند

1

به اشتراک گذاری این پست


لینک به پست

تغییراتی که فرمودید را اعمال کردم .. اما نتیجه ای حاصل نشد ..

0

به اشتراک گذاری این پست


لینک به پست

پست تایپی که براش از تاکسونامی استفاده می کنید پست تایپ دیفالت است یا پست تایپ خاص براش نوشتید؟

من از تاکسونامی تو بیش از 50 تا سایت استفاده کردم و چیزی برای پیچیدگی نداره مشکل قطعا از طرف قالب خودتونه

1

به اشتراک گذاری این پست


لینک به پست

پست تایپ با نام kalam هستش که به صورت زیر ساخته شده .. قالب اصلی که صحیفه هستش و دستکاری نشده .. من فقط قالب اون صفحه که لینک دادم رو ساختم ..


if ( ! function_exists('func_kalam') ) {
// Register Custom Post Type
function func_kalam() {
$labels_kalam = array(
//عنوان برای لیست نمایش تمامی پست ها از نوع کلام
'name' => _x( 'kalam', 'Post Type General Name' ),
// عنوان برای نمایش یک نوع از این پست
'singular_name' => _x( 'kalam', 'Post Type Singular Name' ),
// عنوان برای نمایش نام این نوع پست در منو داشبورد
'menu_name' => __( 'کلام' ),
// عنوان برای نمایش والد های این نوع پست
'parent_item_colon' => __( 'کلام والد:' ),
// عنوان برای نمایش تمامی پست های کلام
'all_items' => __( 'همه کلام ها'),
// عنوان برای دکمه نمایش یک پست از کلام ها
'view_item' => __( 'نمایش کلام' ),
// عنوان برای دکمه ی اضافه کردن یک کلام جدید
'add_new_item' => __( 'افزودن کلام جدید' ),
// Shortcut عنوان برای دکمه ی
'add_new' => __( 'کلام جدید' ),
// عنوان برای دکمه ی ویرایش پست
'edit_item' => __( 'ویرایش کلام' ),
// عنوان برای دکمه ی بروزرسانی یک پست
'update_item' => __( 'به روز رسانی کلام' ),
// عنوان برای دکمه جستجو در کلام ها
'search_items' => __( 'جستجو در کلام ها' ),
// عنوان برای نمایش پیام عدم جستجو موفق
'not_found' => __( 'کلامی یافت نشد !' ),
// عنوان برای نمایش عدم وجود پست مورد نظر در پست های پاک شده
'not_found_in_trash' => __( 'کلامی در زباله دان یافت نشد !' ) );

$args_kalam = array( // آرگومان های تنظیمات برای پست کلام ها
'public' => true,
// لیبل مورد استفاده برای پست کلام ها
'label' => __( 'kalam' ),
// لیبل مورد استفاده برای توضیح پست کلام ها
'description' => __( 'Kalam information pages' ),
'labels' => $labels_kalam,
'supports' => array( 'title', 'editor', 'excerpt', 'author', 'thumbnail', 'comments', 'trackbacks', 'revisions', 'custom-fields', 'page-attributes', 'post-formats' ),
'taxonomies' => array( 'post_tag' ),
'hierarchical' => true, // قابلیت وارث و موروث شدن پست ها از یکدیگر
'menu_position' => 5, // موقعیت نمایش در منو
'menu_icon' => 'saqi.ir/wp-content/uploads/2014/06/kalam_icon.png', // آدرس آیکان کنار عنوان پست در داشبورد
'can_export' => true, // اضافه کردن قابلیت خروجی گرفتن از کلام ها
'has_archive' => true, // اضافه کردن قابلیت آرشیو کردن پست ها
'exclude_from_search' => true // اضافه کردن محصولات در عنواین جستجو
);

register_post_type( 'kalam', $args_kalam ); // رجیستر کردن این نوع پست
}}

// Hook into the 'init' action
add_action( 'init', 'func_kalam');

در صورت لزوم میتونم دسترسی بدم خودتون نگاهی بیندازید استاد ..

0

به اشتراک گذاری این پست


لینک به پست


register_taxonomy( 'kalam_auth', array( 'kalam' ), $args_tax_kalam_auth );

و این خط کد را هم


'taxonomies' => array( 'post_tag' ),

باید تبدیل کنید به


'taxonomies' => array( 'post_tag', 'kalam_auth' ),

یکبار ساختار پیوند یکتا را هم به روز رسانی کنید

در ضمن قالب صحیفه غیر رایگانه و بحث در موردش ممنوعه

نشانی بایگانی های شما بعد از به روز رسانی پیوند یکتا باید بشود

http://site.com/kalam/kalam_auth/TERM

که TERM نام دسته ای است که می خواهید بایگانی اش را ببینید

0

به اشتراک گذاری این پست


لینک به پست

من روی قالب 2014 هم این کد ها رو تست کردم .. اما جوابی نگرفتم .. شما رو قالب پیش فرض مشکل رو حل کنید ..

بعد از تغییرات و ذخیره پیوند یکتا، آدرس ها به صورت http://site.com/kalam_auth/TERM در میان و مشکل قبل هست .. اما دستی هم اونی که شما فرمودید رو میزنم ، به 404 میخوره ..

0

به اشتراک گذاری این پست


لینک به پست

این نشانی را دستی چک کنید و اگر نتیجه نداشت (روی قالب دیفالت) لیست افزونه هاتون رو بگذارید (در قالب دیفالت باید پست تایپ و تاکسونامنی هر دو دوباره تعریف شوند)


http://site.com/?post_type=kalam&taxonomy=kalam_auth&term=TERM

یکبار هم این کد را تغییر بدید به


register_taxonomy( 'kalam_auth', array( 'post' ), $args_tax_kalam_auth );

و چند مطلب معمولی را نشانه گذاری کنید در یکی از دسته های تاکسونامی و چک کنید بایگانی برای مطالب عادی درسته یا خیر تا مشخص بشه مشکل از پست تایپه یا تاکسونامی

0

به اشتراک گذاری این پست


لینک به پست

ارسال شده در (ویرایش شده)

این نشانی که فرمودید رو دستی وارد کردم .. بدون مشکل کار میکنه ..

فرمایش دوم رو هم انجام دادم .. پست های معمولی ای را که نشانه گذاری میکنم، آرشیوشون کار میکنه و مشکلی نداره .. با این آدرس:


http://saqi.ir/kalam_auth/TERM/

ویرایش شده در توسط amir68
0

به اشتراک گذاری این پست


لینک به پست

از برگه ی archive.php یک کپی بگیرید با نام kalam-archive.php ذخیره اش کنید و تست بگیرید (ساختار پیوند یکتا بعد از ساخت برگه به روز رسانی شود)

اگر نشد محتویات htaccess را بگذارید اینجا

0

به اشتراک گذاری این پست


لینک به پست

این کد را به functions.php اضافه کنید و تست بگیرید و نتیجه را بفرمایید


add_action( 'pre_get_posts', 'add_my_post_types_to_query' );
function add_my_post_types_to_query( $query ) {
if (!is_admin() && is_archive() && $query->is_main_query() ) {
if(is_post_type_archive('kalam')) {
$query->set( 'post_type', array( 'kalam_auth') );
}
else {
$query->set( 'post_type', array( 'post', 'kalam_auth') );
}
}
return $query;
}

1

به اشتراک گذاری این پست


لینک به پست

کدی که فرمودید الان در فایل فانکشن گذاشتم .. تغییری ندیدم (پس از ذخیره مجدد پیوند یکتا)

0

به اشتراک گذاری این پست


لینک به پست

کش را تخلیه کنید و تست کنید

این اکشن به زور تاکسونامی را برای یک پست تایپ خاص تعریف می کند بعیده نشون نده

الان هم باید در بایگانی تاکسونامی در مطالب معمولی مطالب پست تایپ کلام را ببینید و هم بایگانی پست تایپ کلام

1

به اشتراک گذاری این پست


لینک به پست

بنده با چند مرورگر تست کردم جوابی نگرفتم .. لطفا شما هم چک کنید (کد در فانکشن موجوده ..)

0

به اشتراک گذاری این پست


لینک به پست

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری