naserr 0 ارسال شده در شهریور 93 گزارش بازنشر ارسال شده در شهریور 93 (ویرایش شده) سلام خدمت دوستان،با توجه به نیازم در قالب پست سفارشی custom post type ساختم که در سایت تمام نوشته های آن توسط مدیر ارشد ایجاد شده و نمایش آن به صورت عمومی میباشد ، اما امکان ویرایش هر نوشته به یک کاربر ( و نه وظیفه ((role)) ! ) اختصاص دارد که در قسمت مدیریت هر کاربر به طور اختصاصی باید فقط نوشته خودش رو ببینید و بتواند آن را ویرایش کند.کاربران دارای نقش ویرایشگر میباشند تا بالاترین سطوح دسترسی رو داشته باشند و بتوانند دسته جدید ایجاد کنند...با توجه به این نیاز از افزونه user specific content استفاده کردم اما در افزونه تنها قابلیت ایجاد دسترسی به کاربران در بخش های post و page پیشفرض وردپرس بود که در آن خبری از custom post بنده نبود!با پیگیری بیشتر در سایت خود نویسنده افزونه سوال و جواب در این مورد رو پیدا کردم اما بعد از استفاده از کد با پیغام خطای syntax error, unexpected مواجه شدم.صاحب افزونه برای اضافه کردن امکانات افزونه ، به پست سفارشی custom post type کد زیر را ارائه کردند :http://en.bainternet...-content-pluginلطفا روش استفاده صحیح از این هک رو در افزونه user specific content بفرمایید تا بتونم در کار جلو برم . با تشکر از وقتی که گذاشتیدadd_action('init','add_metabox_to_my_custom_post_type',10);function add_metabox_to_my_custom_post_type(){ $post_type = 'CHANGE_THIS_TO_YOUR_POST_TYPE'; global $U_S_C_i; add_meta_box( 'User_specific_content', __( 'User specific content box'), array($U_S_C_i,'User_specific_content_box_inner'), $post_type );} ویرایش شده شهریور 93 توسط Morteza نقل قول لینک به ارسال
imanfakhar 26231 ارسال شده در شهریور 93 گزارش بازنشر ارسال شده در شهریور 93 این کد را بهfunctions.php قالبتون کپی کنید 3 نقل قول لینک به ارسال
naserr 0 ارسال شده در شهریور 93 مالک گزارش بازنشر ارسال شده در شهریور 93 متاسفانه بعد از کپی در function.php با این ارور مواجه میشم و سایت از دسترس خارج میشود:Fatal error: Call to undefined function add_meta_box() in /Applications/XAMPP/xamppfiles/htdocs/wordpress/wp-content/themes/mymahd/functions.php on line 1150 لطفا بفرمایید برای داشتن این قابلیت در قالب چه کار کنم؟ نقل قول لینک به ارسال
imanfakhar 26231 ارسال شده در شهریور 93 گزارش بازنشر ارسال شده در شهریور 93 بجای CHANGE_THIS_TO_YOUR_POST_TYPE هم باید اسم پست تایپتون رو بگذارید 3 نقل قول لینک به ارسال
naserr 0 ارسال شده در شهریور 93 مالک گزارش بازنشر ارسال شده در شهریور 93 (ویرایش شده) بجای CHANGE_THIS_TO_YOUR_POST_TYPE هم باید اسم پست تایپتون رو بگذاریدبنده این کار رو هم کردم هم در فایل function.php و هم در فایل خود پلاگین اما بعد از ذخیره کد به ارور میخورم...فکر میکنم مشکل از قسمت add meta box هست ، زیرا زمانی که این بخش را پاک میکنم پیغام خطایی دریافت نمیکنم اما این قسمت هم اضافه نشده است.add_meta_box('User_specific_content',__( 'User specific content box'),array($U_S_C_i,'User_specific_content_box_inner'),$post_type); ویرایش شده شهریور 93 توسط Morteza نقل قول لینک به ارسال
Morteza 34190 ارسال شده در شهریور 93 گزارش بازنشر ارسال شده در شهریور 93 add_meta_box تابع وردپرس هست و خطایی که داده شده یک خطای انحرافی هست.شما دیباگ وردپرس رو فعال کنید. ببینید چه خطاهای دیگه ای میگیرید.همچنین فایل error_log رو در روت سرور پیدا کنید و اینجا پیوست کنید.تابعی که به شما داده شده درست هست و شما باید در فایل function.php پوسته تون و طبق تغییری که جناب فخار فرمودن قرار بدید.اگر بازهم خطا گرفتید روی یک پوسته پیش فرض تست کنید.اگر بازهم خطا تکرار شد یک وردپرس خام نصب و تست کنید. 3 نقل قول لینک به ارسال
Parsa 23463 ارسال شده در شهریور 93 گزارش بازنشر ارسال شده در شهریور 93 بهتره نمونه این صفحه رو بررسی کنیدhttp://codex.wordpress.org/Function_Reference/add_meta_boxتابع نباید در اکشن init اجرا بشه 2 نقل قول لینک به ارسال
naserr 0 ارسال شده در شهریور 93 مالک گزارش بازنشر ارسال شده در شهریور 93 (ویرایش شده) متاسفانه بعد از امتحان کردن همین مراحل روی ۳ قالب دیگر در وب سایت های آنلاین مختلف باز هم با همین ارور مواجه شدم!این کاستوم پست من هست :function et_vertex_register_posttypes() {$labels = array('name' => _x( 'Projects', 'project type general name', 'Vertex' ),'singular_name' => _x( 'Project', 'project type singular name', 'Vertex' ),'add_new' => _x( 'Add New', 'project item', 'Vertex' ),'add_new_item' => __( 'Add New Project', 'Vertex' ),'edit_item' => __( 'Edit Project', 'Vertex' ),'new_item' => __( 'New Project', 'Vertex' ),'all_items' => __( 'All Projects', 'Vertex' ),'view_item' => __( 'View Project', 'Vertex' ),'search_items' => __( 'Search Projects', 'Vertex' ),'not_found' => __( 'Nothing found', 'Vertex' ),'not_found_in_trash' => __( 'Nothing found in Trash', 'Vertex' ),'parent_item_colon' => '',);و کدی که تغییر دادم و به آخرین خط function.php انتقال دادم به این صورت است :add_action('init','add_metabox_to_my_custom_post_type',10);function add_metabox_to_my_custom_post_type(){$post_type = 'Projects';global $U_S_C_i;add_meta_box('User_specific_content',__( 'User specific content box'),array($U_S_C_i,'User_specific_content_box_inner'),$post_type);}جناب پارسا ممنونم از راهنماییتون اما این کد از خود صاحب افزونه برای همین منظور گرفته شده!http://en.bainternet...n/#comment-3309آیا امکان دارد بنده در اون تغییر ایجاد کنم؟ ویرایش شده شهریور 93 توسط naserr نقل قول لینک به ارسال
Parsa 23463 ارسال شده در شهریور 93 گزارش بازنشر ارسال شده در شهریور 93 شما آزاد هستید هر تغییری برای حل مشکلتون در افزونه بدهیدنمونه مستندات رو ببینید 2 نقل قول لینک به ارسال
پست های پیشنهاد شده
به گفتگو بپیوندید
هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .