it-swarm.asia

كيفية تغيير الصياغة في wp-admin الخلفية؟

لا أرغب في تحرير الملفات الأساسية من أجل تغيير الصفحة التي يدخل فيها المستخدم منشورات جديدة ، فهل هناك طريقة للقيام بذلك داخل سمة ، ربما داخل وظائف. php ..؟

على وجه التحديد ، أحاول تغيير صياغة نص "تعيين صورة مميزة" إلى شيء مثل "تعيين صورة مميزة - 50 بكسل في 50 بكسل"

4
cannyboy

يمكنك استخدام عامل التصفية admin_post_thumbnail_html:

function custom_admin_post_thumbnail_html( $content ) {
    return $content = str_replace( __( 'Set featured image' ), __( 'Set featured image - 50 pixels by 50 pixels' ), $content );
}

add_filter( 'admin_post_thumbnail_html', 'custom_admin_post_thumbnail_html' );
11
sorich87

طريقة واحدة هي استخدام رمز jQuery دقيق المدرج في رأس المسؤول لتعديل النص داخل جزء معين من الصفحة. يجب أن تكون قادرًا على استهداف علامة div/span/html محددة من أجل القيام بذلك ، ولكن هذا النظام سيتيح لك تحرير أي جزء من الصفحة حتى لو لم يكن هناك مرشح (على الرغم من أن إجابة Sorich بها مرشح رائع لـ حالة الاستخدام في سؤالك ، إجابتي تنطبق بشكل عام على سؤالك نفسه).

استخدمت الرمز أدناه لتغيير مربع الصورة المميزة في 2.9 ليقول "الصورة المميزة" بدلاً من "صورة مصغرة للنشر" لأن العلامات تغيرت في الإصدار 3.0 وأردت أن يستخدم موقعي القديم المصطلحات الجديدة قبل ترقيتها.

لاحظ أن الكود يتعامل مع كل من المربع المنبثق والميتابوكس ، ويستخدم بعض وظائف مسج AJAX لضمان إعادة تعديل المحتوى بعد تحميل الصفحات في iframe.

/**
 * Use jQuery to add context to the Featured Image metabox on post editing pages
 * and to change the label to be Featured Image instead of Post thumbnail in WP 2.9 
 * before the label changed.
 *
 * See javascript for info on removing these as they become part of the AP API
 */
function gv_admin_featured_image_tweaks() {
    ?>
<script type="text/javascript">
    jQuery(document).ready(function($) {
        /**
         * TEMPORARY: SWITCH VARIOUS LABELS TO SHOW FEATURED IMAGE INSTEAD OF POST THUMBNAIL
         * REMOVE WHEN 3.0 COMES OUT AND THIS IS THE DEFAULT LABEL
         */
        $('#postimagediv h3 span').text('Featured Image');
        // Only change the set thumbnail text if its that, otherwise we end up replacing the img tag when it is set
        if ($('#postimagediv #set-post-thumbnail').text() == 'Set thumbnail') {
            $('#postimagediv #set-post-thumbnail').text('Choose Featured Image');
        }
        $('#postimagediv #remove-post-thumbnail').text('Remove Featured Image');

        // label inside media item details in popup
        $('.wp-post-thumbnail').text('Use as Featured Image');
        // refresh inside media item for after upload finishes.
        $('body').ajaxComplete(function() {
            $('.wp-post-thumbnail').text('Use as Featured Image');
        });

        /**
         * Add a description of how we use featured images. should be replaced with a description parameter in the API
         */
        $('#postimagediv .inside').prepend('<p>This image will be used in the featured posts slider if this post is featured. It should be at least 400px wide by 300px tall.</p>');
    });
</script>
    <?php
}
add_action('admin_head', 'gv_admin_featured_image_tweaks');
5
jerclarke

حل أسهل هنا:

add_action( 'admin_head', 'replace_default_featured_image_meta_box', 100 );
function replace_default_featured_image_meta_box() {
    remove_meta_box( 'postimagediv', 'my-post-type-here', 'side' );
    add_meta_box('postimagediv', __('My Cover Image'), 'post_thumbnail_meta_box', 'my-post-type-here', 'side', 'high');
}

الفكرة الرئيسية هي: إعادة تعريف صندوق التعريف باستخدام العنوان المطلوب. استبدل النوع اللاحق الذي تريد تحرير التسمية " صورة مميزة " الافتراضية.

0
Reza Mamun