رفتن به مطلب

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


پست های پیشنهاد شده

با سلام

دوستان عزیز چطوری میشه یک فیلد توضیحات دیگر در قسمت برچسب ها و دسته ها اضافه کرد ؟

مثلاً هنگام ایجاد یک دسته یا برچسب در فیلد توضیحات میشه توضیح رو وارد کرد و البته html هم ساپورت میکنه که توی صفحه دسته ها میشه این قسمت رو فراخوانی کرد

چطور میتونم یک فیلد دیگر با همین ویژگی ها اضافه کنم ؟

لینک به ارسال

با استفاده از تابع add_meta_box

codex :


http://codex.wordpress.org/Function_Reference/add_meta_box

+


http://wptheming.com/2010/08/custom-metabox-for-post-type/
http://wp.smashingmagazine.com/2011/10/04/create-custom-post-meta-boxes-wordpress/
http://www.wpbeginner.com/wp-tutorials/how-to-add-custom-meta-boxes-in-wordpress-posts-and-post-types/

لینک به ارسال

با استفاده از تابع add_meta_box

codex :


http://codex.wordpress.org/Function_Reference/add_meta_box

+


http://wptheming.com/2010/08/custom-metabox-for-post-type/
http://wp.smashingmagazine.com/2011/10/04/create-custom-post-meta-boxes-wordpress/
http://www.wpbeginner.com/wp-tutorials/how-to-add-custom-meta-boxes-in-wordpress-posts-and-post-types/

فکر کنم این فقط برای پست باشه ؟!! من برای برچسب ها و موضوعات میخوام.

لینک به ارسال

آقا پارسا واقعاً همشون با توضیحات اضافی و پیچیده هستند و من سردر نیاوردم.

امکانش هست کدهای لازم برای فقط یک فیلد مشابه فیلد توضیحات رو بهم بگید ؟

میخوام بشه مثله فیلد توضیحات با تابعی مشابه echo category_description(); فراخوانیش کنم.

لینک به ارسال


get_tax_meta()
update_tax_meta()
delete_tax_meta()

آقا ایمان ماشالا دیگه خیلی کلی گفتی :D متوجه نشدم بازم.

لینک به ارسال

از مثالهای لینک اول استفاده کنید

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

لینک به ارسال

از مثالهای لینک اول استفاده کنید

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

باور بفرمایید همه لینک ها رو بررسی کردم منتها یا جواب نمیدن یا پیغام خطا میدن.


<?php
// the option name
define('MY_CATEGORY_FIELDS', 'my_category_fields_option');
// your fields (the form)
add_filter('edit_category_form', 'my_category_fields');
function my_category_fields($tag) {
$tag_extra_fields = get_option(MY_CATEGORY_FIELDS);
?>
<table class="form-table">
<tr class="form-field">
<th scope="row" valign="top"><label for="_ce4_fullDescription">Category Text</label></th>
<td><textarea style="height:70px; width:100%;margin-left:-5px;" name="_ce4_fullDescription" id="_ce4_fullDescription"><?php echo $tag_extra_fields[$tag->term_id]['my_description']; ?></textarea>
<p class="description">This text will appear on the category landing page when viewing all articles in a category. The image, you supply above, if any, will be used here and this content will wrap around it.</p></td>
</tr>
</table>
<?php
}

// when the form gets submitted, and the category gets updated (in your case the option will get updated with the values of your custom fields above
add_filter('edited_terms', 'update_my_category_fields');
function update_my_category_fields($term_id) {
if($_POST['taxonomy'] == 'category'):
$tag_extra_fields = get_option(MY_CATEGORY_FIELDS);
$tag_extra_fields[$term_id]['my_title'] = strip_tags($_POST['_ce4-categoryTitle']);
$tag_extra_fields[$term_id]['my_description'] = strip_tags($_POST['_ce4_fullDescription']);
update_option(MY_CATEGORY_FIELDS, $tag_extra_fields);
endif;
}

// when a category is removed
add_filter('deleted_term_taxonomy', 'remove_my_category_fields');
function remove_my_category_fields($term_id) {
if($_POST['taxonomy'] == 'category'):
$tag_extra_fields = get_option(MY_CATEGORY_FIELDS);
unset($tag_extra_fields[$term_id]);
update_option(MY_CATEGORY_FIELDS, $tag_extra_fields);
endif;
}
?>

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

1- کد اچ تی ام ال رو ساپورت نمیکنه

2- کد فراخونیش توی قالب رو نمیدونم چیه

لینک به ارسال

سلام دوستان این کد به خوبی جواب داد

فقط یه سوال اگه بخوام از همین کد تو کاستوم taxonomy استفاده کنم باید چیکار کنم؟

راهنمایی کنید ممنون میشم


// Add custom fields to category edit pages
// the option name
define('Category_Extras', 'Category_Extras_option');
// your fields (the form)
add_filter('edit_category_form', 'Category_Extras');
function Category_Extras($tag) {
$tag_extra_fields = get_option(Category_Extras);
?>
<table class="form-table">
<tr class="form-field">
<th scope="row" valign="top"><label for="Category_Extras_Features">Category Features</label></th>
<td><textarea style="width: 97%;" cols="50" rows="5" name="Category_Extras_Features" id="Category_Extras_Features" class="tinymce"><?php echo $tag_extra_fields[$tag->term_id]['Category_Extras_Features']; ?></textarea>
<p class="description">This isn't applicable to all categories but allows additional information to be displayed on a category page.</p></td>
</tr>
<tr class="form-field">
<th scope="row" valign="top"><label for="Category_Extras_Applications">Category Applications</label></th>
<td><textarea style="width: 97%;" cols="50" rows="5" name="Category_Extras_Applications" id="Category_Extras_Applications" class="Category_Extras_Features"><?php echo $tag_extra_fields[$tag->term_id]['Category_Extras_Applications']; ?></textarea>
<p class="description">This isn't applicable to all categories but allows additional information to be displayed on a category page.</p></td>
</tr>
</table>

<?php
}

// when the form gets submitted, and the category gets updated (in your case the option will get updated with the values of your custom fields above
add_filter('edited_terms', 'update_Category_Extras');
function update_Category_Extras($term_id) {
if($_POST['taxonomy'] == 'category'):
$tag_extra_fields = get_option(Category_Extras);
$tag_extra_fields[$term_id]['Category_Extras_Features'] = strip_tags($_POST['Category_Extras_Features']);
$tag_extra_fields[$term_id]['Category_Extras_Applications'] = strip_tags($_POST['Category_Extras_Applications']);
update_option(Category_Extras, $tag_extra_fields);
endif;
}

// when a category is removed
add_filter('deleted_term_taxonomy', 'remove_Category_Extras');
function remove_Category_Extras($term_id) {
if($_POST['taxonomy'] == 'category'):
$tag_extra_fields = get_option(Category_Extras);
unset($tag_extra_fields[$term_id]);
update_option(Category_Extras, $tag_extra_fields);
endif;
}

ویرایش شده توسط ARIARAD
لینک به ارسال

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

اگه میشه یه توضیح خوب بدید که متوجه بشیم من یک هفتست دارم میگردم و به نتیجه ای نرسیدم

ببینید دوستان به این شکل که در سایت زیر گفته شده فیلد اضافه میشه به خوبی ذخیره هم میشه

http://sabramedia.co...stom-taxonomies

ولی برای نمایش دادنش مشکل دارم

گفته که به این صورت میشه نمایش داد


// Get the custom fields based on the $presenter term ID
$presenter_custom_fields = get_option( "taxonomy_term_$presenter->term_id" );

// Return the value for the "presenter_id" custom field
$presenter_data = get_userdata( $presenter_custom_fields[presenter_id] ); // Get their data
?>
<?php
echo '<pre>';
print_r( $presenter_custom_fields );
echo '</pre>';
?>

ولی مشکل داره

taxonomy_term_$presenter->term_id باید ای دی دسته مورد نظرو فراخوانی کنه ولی نمیکنه وقتی که من دستی ای دی دسترو میدم خوب عمل میکنه مثلا کدو به شکل زیر میزنم


$presenter_custom_fields = get_option( "taxonomy_term_4" );

در غیر این صورت کار نمیکنه مشکل از کجاست؟

ترو خدا راهنمایی کنید و بعد از به نتیجه رسیدن اگه امکانش هست یه پست اموزشی جامع در مورد اضافه کردن کاستوم فیلد در بخشه دسته ها داخل سایت بذارید خیلی ها ممکنه دنبالش باشن

ویرایش شده توسط ARIARAD
لینک به ارسال

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

http://en.bainternet.info/2012/wordpress-taxonomies-extra-fields-the-easy-way

لینک به ارسال
  • 2 ماه بعد...

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

http://en.bainternet...ds-the-easy-way

ممنون از راهنمایتون

میشه در مورد نمایش اطلاعات فیلد ها هم یه توضیح کوتاهی بدین یا نمونه کدی من هر کاری کردم نتونستم اطلاعاتی که از طریق فیلدایی که اضافه کردیم نشون بدم

لینک به ارسال

برای نمایش داخل مطالب


<?php the_terms( $id, $taxonomy, $before, $sep, $after ); ?>

مثل:


<?php the_terms( $post->ID, 'newtaxonomy', 'تاکسونامی جدید: ', ' - ' ); ?>

برای احضار لیست :


<?php get_the_term_list( $id, $taxonomy, $before, $sep, $after ) ?>

مثال:


echo '<ul class="styles">';
echo get_the_term_list( $post->ID, 'newtaxonomy', '<li>', ',</li><li>', '</li>' );
echo '</ul>';

لینک به ارسال

برای نمایش داخل مطالب


<?php the_terms( $id, $taxonomy, $before, $sep, $after ); ?>

مثل:


<?php the_terms( $post->ID, 'newtaxonomy', 'تاکسونامی جدید: ', ' - ' ); ?>

برای احضار لیست :


<?php get_the_term_list( $id, $taxonomy, $before, $sep, $after ) ?>

مثال:


echo '<ul class="styles">';
echo get_the_term_list( $post->ID, 'newtaxonomy', '<li>', ',</li><li>', '</li>' );
echo '</ul>';

اقا ایمان به یه مشکل جدید خوردم که یک روزه کامل روش کار کردمو به نتیجه ای نرسیدم تمام کامنتای زیر اون پستم خوندمو نتیجه ای نداشت

اونم اینه که دکمه های اپلود تصاویر و نمایش کد رنگ کار نمی کنه هر چور روش کلیک می کنی هیچ اتفاقی نمیافته

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

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

خواهشا راهنمایی کنید که خیلی واجبه ممنون

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

ویرایش شده توسط ARIARAD
لینک به ارسال

سئوالات شما ارتباطی با موضوع تایپیک نداره لطف کنید براشون تایپیک جدا با توضیحات کامل بگذارید

لینک به ارسال

سئوالات شما ارتباطی با موضوع تایپیک نداره لطف کنید براشون تایپیک جدا با توضیحات کامل بگذارید

ممنون اقای فخار از پاسختون

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

http://en.bainternet.info/2012/wordpress-taxonomies-extra-fields-the-easy-way

با این حال بنده تاپیک جدا زدم شرمنده نمی دونم چطوری باید توضیح میدادم توضیحش سخته اگه امکانش هست یه بار پلاگینو نصب کنید متوجه منظورم میشد

اینم لینک تاپیک جدید

لینک به ارسال

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

×
×
  • اضافه کردن...