رفتن به مطلب

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


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

با سلام خدمت دوستان عزیز

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

عکسی براتون گذاشتم از زمینه های قالبمون که میتونید مشاهده کنید مثلا امکان لینک دادن درش نیست یا امکان تغییر رنگ و فونت و چیزهای دیگر.

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

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


$arr_design_details =
array (
"cost" => array(
"name" => "cost",
"type" => "editor",
"title" => "راهنمای نصب:",
"description" => "",
"scope" => array("post","page")),[/left]


"size" => array(
"name" => "size",
"type" => "editor",
"title" => "مشخصات: ",
"description" => "",
"scope" => array("post","page")),
);

post-8248-0-20706500-1416424486_thumb.jp

لینک به ارسال

آرگومان های wp_editor تو array به چه صورت تعریف شده؟ اضافه کنید


'tinymce' => true,

مثال:


$settings = array(
'textarea_name' => 'نام زمینه دلخواه',
'quicktags' => array( 'buttons' => 'em,strong,link' ),
'tinymce' => true,
'editor_css' => '<style>#wp-excerpt-editor-container .wp-editor-area{height:175px; width:100%;}</style>'
);
$cn = get_post_meta($post->ID, "نام زمینه دلخواه", true);
wp_editor( $cn , $editor_id, $settings );

لینک به ارسال

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


<?php[/left]


$arr_design_details =
array (
"cost" => array(
"name" => "cost",
"type" => "editor",
"title" => "راهنمای نصب:",
"description" => "",
"scope" => array("post","page")),
"size" => array(
"name" => "size",
"type" => "editor",
"title" => "مشخصات: ",
"description" => "",
"scope" => array("post","page")),
"dllink" => array(
"name" => "dllink",
"type" => "editor",
"title" => "لينک دانلود :",
"description" => "",
"scope" => array("post","page")),
"password" => array(
"name" => "password",
"type" => "editor",
"title" => "لینک تالار:",
"description" => "",
"scope" => array("post","page")),
"manba" => array(
"name" => "manba",
"type" => "editor",
"title" => "منبع :",
"description" => "",
"scope" => array("post","page"))
);
function generate_design_form() {
global $post, $arr_design_details;
foreach($arr_design_details as $meta_box) {
echo'<input type="hidden" name="'.$meta_box['name'].'_noncename" id="'.$meta_box['name'].'_noncename" value="'.wp_create_nonce( plugin_basename(__FILE__) ).'" />';
echo'<div><span style="width:200px; float:right">'.$meta_box['title'].'</span>';
if( $meta_box['type'] == "input" ) {
$meta_box_value = get_post_meta($post->ID, $meta_box['name'], true);
if($meta_box_value == "")
$meta_box_value = $meta_box['std'];
echo'<input type="text" name="'.$meta_box['name'].'" value="'.$meta_box_value.'" size="98" /><br />';
}elseif($meta_box['type'] == "editor"){
$meta_box_value = get_post_meta($post->ID, $meta_box['name'], true);
wp_editor( $meta_box_value, $meta_box['name'] ,$settings = array('media_buttons'=>0,'textarea_rows'=>2));
}
echo '</div>';
echo'<p><label for="'.$meta_box['name'].'">'.$meta_box['description'].'</label></p>';
}
}
function save_form_data( $post_id ) {
global $post, $arr_design_details;
foreach($arr_design_details as $meta_box) {
if ( !wp_verify_nonce( $_POST[$meta_box['name'].'_noncename'], plugin_basename(__FILE__) )) {
return $post_id;
}
if ( 'page' == $_POST['post_type'] ) {
if ( !current_user_can( 'edit_page', $post_id ))
return $post_id;
} else {
if ( !current_user_can( 'edit_post', $post_id ))
return $post_id;
}
$data = $_POST[$meta_box['name']];
if(get_post_meta($post_id, $meta_box['name']) == "")
add_post_meta($post_id, $meta_box['name'], $data, true);
elseif($data != get_post_meta($post_id, $meta_box['name'], true))
update_post_meta($post_id, $meta_box['name'], $data);
elseif($data == "")
delete_post_meta($post_id, $meta_box['name'], get_post_meta($post_id, $meta_box['name'], true));
}
}
function create_meta_box() {
global $theme_name, $arr_design_details;
if (function_exists('add_meta_box')) {
add_meta_box( 'my-custom-fields', 'باکس دانلود', 'generate_design_form', 'post', 'normal', 'high' );
}
}
add_action('admin_menu', 'create_meta_box');
add_action('save_post', 'save_form_data');

?>

لینک به ارسال

به این صورت تست کنید


<?php
$arr_design_details =
array (
"cost" => array(
"name" => "cost",
"type" => "editor",
"title" => "راهنمای نصب:",
"description" => "",
"scope" => array("post","page")),
"size" => array(
"name" => "size",
"type" => "editor",
"title" => "مشخصات: ",
"description" => "",
"scope" => array("post","page")),
"dllink" => array(
"name" => "dllink",
"type" => "editor",
"title" => "لينک دانلود :",
"description" => "",
"scope" => array("post","page")),
"password" => array(
"name" => "password",
"type" => "editor",
"title" => "لینک تالار:",
"description" => "",
"scope" => array("post","page")),
"manba" => array(
"name" => "manba",
"type" => "editor",
"title" => "منبع :",
"description" => "",
"scope" => array("post","page"))
);
function generate_design_form() {
global $post, $arr_design_details;
foreach($arr_design_details as $meta_box) {
echo'<input type="hidden" name="'.$meta_box['name'].'_noncename" id="'.$meta_box['name'].'_noncename" value="'.wp_create_nonce( plugin_basename(__FILE__) ).'" />';
echo'<div><span style="width:200px; float:right">'.$meta_box['title'].'</span>';
if( $meta_box['type'] == "input" ) {
$meta_box_value = get_post_meta($post->ID, $meta_box['name'], true);
if($meta_box_value == "")
$meta_box_value = $meta_box['std'];
echo'<input type="text" name="'.$meta_box['name'].'" value="'.$meta_box_value.'" size="98" /><br />';
}elseif($meta_box['type'] == "editor"){
$meta_box_value = get_post_meta($post->ID, $meta_box['name'], true);
wp_editor( $meta_box_value, $meta_box['name'] ,$settings = array('tinymce'=> true,'textarea_rows'=>2));
}
echo '</div>';
echo'<p><label for="'.$meta_box['name'].'">'.$meta_box['description'].'</label></p>';
}
}
function save_form_data( $post_id ) {
global $post, $arr_design_details;
foreach($arr_design_details as $meta_box) {
if ( !wp_verify_nonce( $_POST[$meta_box['name'].'_noncename'], plugin_basename(__FILE__) )) {
return $post_id;
}
if ( 'page' == $_POST['post_type'] ) {
if ( !current_user_can( 'edit_page', $post_id ))
return $post_id;
} else {
if ( !current_user_can( 'edit_post', $post_id ))
return $post_id;
}
$data = $_POST[$meta_box['name']];
if(get_post_meta($post_id, $meta_box['name']) == "")
add_post_meta($post_id, $meta_box['name'], $data, true);
elseif($data != get_post_meta($post_id, $meta_box['name'], true))
update_post_meta($post_id, $meta_box['name'], $data);
elseif($data == "")
delete_post_meta($post_id, $meta_box['name'], get_post_meta($post_id, $meta_box['name'], true));
}
}
function create_meta_box() {
global $theme_name, $arr_design_details;
if (function_exists('add_meta_box')) {
add_meta_box( 'my-custom-fields', 'باکس دانلود', 'generate_design_form', 'post', 'normal', 'high' );
}
}
add_action('admin_menu', 'create_meta_box');
add_action('save_post', 'save_form_data');
?>

لینک به ارسال

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


}elseif($meta_box['type'] == "editor"){
$meta_box_value = get_post_meta($post->ID, $meta_box['name'], true);
wp_editor( $meta_box_value, $meta_box['name'] ,$settings = array('media_buttons'=>0,'textarea_rows'=>2));
}

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

لینک به ارسال

کدی که گذاشتید هیچ ایرادی نداره و اینکه با چه کدی و در کجا تداخل ایجاد می شه رو نمی شه حدس زد

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

لینک به ارسال

با سلام

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

لینک به ارسال

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

نویسنده قالبتون اگر از کدهایی که خودش نوشته سر در نیاورده چه انتظاری از دیگران دارید؟

لینک به ارسال

بزرگوار حالا بلد نیست دیگه میفرمایید چه کنیم.

البته اینم عرض کنم ما قبلا یه طراح دیگه کار کرده بود قالبو یه قال قدیمی داشتیم تو وردپرس ورژنای قبلی این درست کار میکرد.یعنی کامل بود بعد که وردپرس اپدیت شد تو قالب قدیمی هم ادیتور اینطوری ناقص لود شد.

بعد که فرد دیگه طراحی کردن این مشکل بازم هست یعنی هم قبلیه هم الان مشکل بوده.بعد از اپدیت وردپرس البته به ورژنهای جدیدتر

شمام که میگید تداخل میکنه خلاصه با یک ادیتور تداخل میکنه دیگه؟یا میتونه با کدای نامربوط به ادیتورم تداخل کنه که باعث شه چندتا دکمه خاص لود نشن اونجا؟

و اینکه افزونه CKeditor رو که نصب میکنم ادیتور به صورت کامل هم بالا و هم تو متاباکسا درست نمایش میده و بدون نقص

لینک به ارسال

پاسختون رو عرض کردم

تداخل کد چیزی نیست که بشه حدس زد با هر کدی در هرجا ممکنه تداخل کنه

اگر فقط در ورژنهای 3.8 به بالا مشکل دارید می تونه مربوط به کدهای آپلودر هم باشه

ضمن اینکه تابع


editor();

به


wp_editor();

تغییر کرده که ظاهرا در قالب شما از تابع درست استفاده شده

لینک به ارسال

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

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

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

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

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

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

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

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

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