ওয়ার্ডপ্রেস 3.5 মিডিয়া ম্যানেজারে একটি মেনু আইটেম যুক্ত করুন


34

নতুন ওয়ার্ডপ্রেস ৩.৩ মিডিয়া ম্যানেজারের বাম দিকের বারে "URL থেকে সন্নিবেশ করুন" এর নীচে কীভাবে একটি নতুন মেনু আইটেম যুক্ত করা যায়?

আমি ব্যাকবোন জেএসের দিকে তাকিয়ে রয়েছি এবং নিজের জেএস দিয়ে এটি ookোকাতে আমার হাত চেষ্টা করেছি তবে সফলতা ছাড়াই।

সম্পাদনা 2: এটি কৌশলটি মনে হচ্ছে:

http://sumtips.com/2012/12/add-remove-tab-wordpress-3-5-media-upload-page.html

এটি সাধারণ স্টাফগুলির জন্য করা উচিত তবে আমি অনুমান করি যে এটি জাভাস্ক্রিপ্টে একই জিনিস করা সম্ভব। নতুন মিডিয়া ম্যানেজার ইন্টার্নালগুলি কীভাবে কাজ করে সে সম্পর্কে কোনও টিউটোরিয়াল / ব্যাখ্যা থাকলে ভাল হবে।


আপনার নতুন মেনুটি করার কি আছে? মেনু আইটেম যুক্ত করা মূল সমস্যা নয় এবং আপনি সঠিক পথে রয়েছেন, তবে যদি আপনার মেনুটি কেবলমাত্র পরিবর্তিত সেটিংয়ের সাথে ডিফল্ট দৃশ্যের চেয়ে আলাদা কিছু প্রদর্শন করে, তবে ব্যাকবোনটি আপনার মেনু আইটেমটির জন্য একটি ভিউ প্রয়োজন ... এবং আমাকে যেখানে
স্ট্রাক করা হয় সেখানে

মেনু আইটেমটিতে ক্লিক করা একটি ভিন্ন ভিউ দেখানোর কথা। মেনু আইটেমটি দেখাতে পাওয়া প্রথম পদক্ষেপ হবে
ইরেজি

1
আমার ১৫০ পয়েন্ট বাউনি সম্পর্কিত: "ইউআরএল থেকে সন্নিবেশ করুন" এর নীচে একটি নতুন স্টেট মেনু আইটেম যুক্ত করার জন্য জেএস-ভিত্তিক পদ্ধতিটি ব্যবহার করার মূল পোস্টারের লক্ষ্য অব্যাহত রাখতে এবং পোস্ট সম্পাদকের প্রাথমিক মিডিয়া মডেলটিতে একটি নতুন দৃষ্টিভঙ্গি যুক্ত করার চেষ্টা করছেন।
স্কট কিংসলে ক্লার্ক

@ ইরেজি, আপনি কি ফাবিয়েন কোয়াট্রাভাক্সের সরবরাহকৃত হিসাবে উত্তরটি চিহ্নিত করতে পারেন?
স্কট কিংসলে ক্লার্ক

উত্তর:


19

ঠিক আছে, আমি মনে করি আমার কাছে এমন কিছু আছে যা উত্তর হতে খুব কাছেই রয়েছে:

আমি আমার কোডটি সংক্ষেপে রেখেছি

ফলাফল এখানে: কাস্টম মেনু স্ক্রিনশট

আমি এমভিসি প্যাটার্নকে সম্মান জানাতে বেশ কয়েকটি ব্যাকবোন বস্তু তৈরি করেছি: controller.Customসমস্ত যুক্তি, view.Toolbar.Customসরঞ্জামদণ্ড বোতামগুলির সাথে ডিলগুলি view.Customএবং অভ্যন্তরীণ ইউআই প্রদর্শন করার দায়িত্বে।


2
এখন পর্যন্ত এটি কি অনুপস্থিত?
কায়সার

+1 ভাল শুরু! তবে, হ্যাঁ, পরিবর্তে আমরা এই জানতে এটি কী বাস্তবায়ন করতে প্রয়োজন, একটি স্ন্যাপশট হবে খুব কুশলী । এবং এছাড়াও, উত্তরের //build an empty view (needs more work)বিষয়বস্তুতে মন্তব্যের সেই লাইনটি টানুন ।
brasofilo

ফলাফল দেখাতে আমি একটি স্ক্রিনশট যুক্ত করেছি। এখনই পরবর্তী কাজটি হ'ল এইচটিএমএল উপাদানগুলি প্রদর্শন করবে এবং ব্যবহারকারীর মিথস্ক্রিয়ায় প্রতিক্রিয়া দেখাবে view
ফাবিয়েন কোয়াটারভাক্স

এটি দুর্দান্ত দেখাচ্ছে, এটি অবশ্যই একটি শুরু! অনুগ্রহ যেমন আছে ততই মূল্যবান, তবে আপনি যদি প্রয়োজন বোধ করেন তবে তা পরবর্তী স্তরে নিয়ে যেতে নির্দ্বিধায়।
স্কট কিংসলে ক্লার্ক

অনুগ্রহ স্কট জন্য ধন্যবাদ! আমি অবশ্যই আরও গভীরভাবে খনন করব কারণ কর্মক্ষেত্রে একটি প্রকল্পের জন্য আমার এটি প্রয়োজন। আমি আমার কোডটি এখানে ব্যবহার করার সাথে সাথে পোস্ট করব back
ফ্যাবিয়েন কোয়াটারভাক্স

10

আমি "রাউটার মেনু" ("মিডিয়া লাইব্রেরি" এর ডানদিকে কিছু যুক্ত করার জন্য) একটি বোতাম যুক্ত করার কাজ করছি, তবে সিস্টেমটি একই।

<script type="text/javascript">
    jQuery(window).on('load', function() {
        var media   = window.wp.media,  
        Attachment  = media.model.Attachment,
        Attachments = media.model.Attachments,
        Query       = media.model.Query,
        l10n = media.view.l10n = typeof _wpMediaViewsL10n === 'undefined' ? {} : _wpMediaViewsL10n,
        NewMenuItem;

        jQuery(document).on( 'click', '.insert-media', function( event ) {
            var workflow = wp.media.editor.get();
            var options = workflow.options;
            if( undefined == NewMenuItem ) {
                NewMenuItem = new wp.media.view.RouterItem( _.extend( options, { text: 'New Item!' } ) );
                workflow.menu.view.views.set( '.media-menu', NewMenuItem, _.extend( options, { add: true } ) );
            }

        });
    });
</script>

এখন, এটি এখনও কিছু করে না। এটি পরবর্তী পদক্ষেপ!


2
এর জন্য ভাগ্য? একটি জেএস-ভিত্তিক সমাধান যা আমি সত্যিই দেখতে চাই, ইফ্রামের পিএইচপি সমাধানটি ইতিমধ্যে মূল পোস্টারের সম্পাদনায় এবং অন্য একটি উত্তরে উল্লিখিত হয়নি
স্কট কিংসলে ক্লার্ক

7

আপনি media_upload_tabsট্যাবটি যুক্ত করতে ফিল্টারটিতে হুক করতে পারেন । এটি নেটওয়ার্ক শেয়ারড মিডিয়া প্লাগইন দ্বারা ব্যবহৃত পদ্ধতি :

function wpse_76980_add_upload_tab( $tabs ) {
    $newtab = array( 'tab_slug' => 'Tab Name' );
    return array_merge( $tabs, $newtab );
}
add_filter( 'media_upload_tabs', 'wpse_76980_add_upload_tab' );

তারপরে আপনি ট্যাব বিষয়বস্তু প্রদর্শন করতে media_upload_tab_slugঅ্যাকশনটিতে ( tab_slugউপরে যেমন ব্যবহৃত হয়) হুক করতে পারেন :

function wpse_76980_media_upload() {
    // display tab contents
}
add_action( 'media_upload_tab_slug', 'wpse_76980_media_upload' );

2
এটি একটি ট্যাব যুক্ত করার পুরানো উপায়। যদিও এটি এখনও কাজ করছে তবে আমার সন্দেহ যে ডাব্লুপি এটি থেকে দূরে চলেছে।
জেনি 3

2
@ জেনি, আমি মনে করি আমরা এই ফিল্টারটিতে বিশ্বাস করতে পারি । প্রাসঙ্গিক টিকিট । (: ওহ, এবং +1, দুর্দান্ত স্নিপেট :)
ব্রাসোফিলো

3

আমার কোনও সমাধান নেই, তবে ইঙ্গিতগুলি। স্ট্রিংগুলি একটি অ্যারের থেকে পাওয়া যায়। আপনি হুক মাধ্যমে ফিল্টার করতে পারেন media_view_strings। ক্লিকের পরে মডেল বক্সটি একটি জাভাস্ক্রিপ্ট, ডাব্লুপিপি 3.5 থেকে ব্যাকবোন.জেএস দিয়ে তৈরি। /wp-includes/js/media-views.jsএকটি সমাধান জন্য দেখুন । ব্যাকবোন আমার জন্যও নতুন এবং স্ক্রিপ্টগুলির উত্সের অনেকগুলি লাইন রয়েছে।


এটি একটি খুব সুন্দর ইঙ্গিত ছিল, তবে আমি মনে করি এটি কম পড়ে। media.view.settingsJS Var নতুন ট্যাব যোগ করতে একটি পিএইচপি ফিল্টার দ্বারা tweaked করা যাবে, কিন্তু তারপর সেই ট্যাব একটি iframe মাধ্যমে দেখা যায় (দেখুন createIframeStatesপদ্ধতি media-views.js)।
ফ্যাবিয়েন কোয়াটারভাক্স

মিডিয়া ভিউয়ের অভ্যন্তরে একটি সাধারণ লিঙ্ক এবং এই লিঙ্কটিতে ক্লিক করার জন্য একটি কাস্টম অ্যাকশন যুক্ত করতে আপনি নিজের ব্লগটিতে একটি টিউটোরিয়াল যোগ করতে পারেন? আপনার বর্তমান বক্তব্য খুব জটিল এবং কাস্টম ক্রিয়াকলাপ অনেক।
বুলেট

দুর্ভাগ্যক্রমে, আমি এটি অর্জনের জন্য আরও সহজ উপায় খুঁজে পাইনি। এই কোডটি কেবল একটি প্রাথমিক কাজ করছে: বামদিকে নিজস্ব কন্টেন্ট ভিউ, সরঞ্জামদণ্ড এবং নিয়ামক সহ একটি কাস্টম মেনু আইটেম যুক্ত করুন। এই সমস্ত নির্মাণ ব্যাকবোন দ্বারা প্রয়োজনীয় ভিউ এবং নিয়ামক তৈরি করতে প্রয়োজন। তবে আপনার যদি সহজ সমাধান হয় তবে নির্দ্বিধায় আমার গিস্টটি কাঁটাচামচ করুন।
ফ্যাবিয়েন কোয়াটারভাক্স

হ্যাঁ, আমি এটি দেখেছি এবং এটিও পরীক্ষা করেছি, ভাল কাজ করে। তবে আমি মনে করি এটি দুর্দান্ত ছিল, আপনি ডিফল্ট মিডিয়া স্ক্রিনের ভিতরে কেবল একটি বোতাম বা লিঙ্ক এবং একটি কলব্যাক ফানকিশনের জন্য একটি সংক্ষিপ্তসার তৈরি করেন, কোনও অতিরিক্ত অংশ নয়, উদাহরণস্বরূপ।
22:53
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.