usef62

پلاگین:مشکل محدودیت css

4 پست در این موضوع قرار دارد

سلام

یک پلاگین نوشتم برای نمایش table ولی مشکل اینجاست که همه css و js داخل پلاگین را در تمام صفحه ها اضافه میکنه

مثال:

پلاگین در صفحه product اضافه کردم درست نمایش میده اما تمام css و js ان در home, blog و... میاد.

چطور میتونم css و js داخل پلاگین محدود به همان پلاگین کنم.


 

    function __construct() {
        add_action('wp_enqueue_scripts', array($this, 'load_css_js' ));
    }
    
    public function load_css_js() {
        wp_enqueue_script('datagrid-script', plugins_url( '../asset/view/js/datagrid.js', __FILE__ ), array('jquery'), false, true);
        wp_enqueue_script('pivotgrid-script', plugins_url( '../asset/view/js/pivotgrid.js', __FILE__ ), array('jquery'), false, true);
        wp_enqueue_script('pivotgrid2-script', plugins_url( '../asset/view/js/pivotgrid2.js', __FILE__ ), array('jquery'), false, true);
        
        wp_enqueue_style( "parent-style", plugins_url( '../asset/view/css/dx.common.css', __FILE__ ) , false, $this->version, "all" );
        wp_enqueue_style( "wta-dxlight-styles", plugins_url( '../asset/view/css/dx.light.css', __FILE__ ) , false, $this->version, "all" );
        wp_enqueue_style( "wta-dxspa-styles", plugins_url( '../asset/view/css/dx.spa.css', __FILE__ ) , false, $this->version, "all" );
        wp_enqueue_style( "wta-styles", plugins_url( '../asset/view/css/style.css', __FILE__ ) , false, $this->version, "all" );
    }

 

 

0

به اشتراک گذاری این پست


لینک به پست

سلام و درود

 

public function __construct() {
	if(is_product())
		add_action('wp_enqueue_scripts', array($this, 'load_css_js' ));
}

 

موفق باشید

0

به اشتراک گذاری این پست


لینک به پست

مچکرم برای پاسخ

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

0

به اشتراک گذاری این پست


لینک به پست

درود مجدد

 

نقل قول

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

بذارید من یه توضیح فنی بدم.

نگاه کنید وقتی وردپرس میرسه به یه شورتکد طبیعتا از تابع wp_head عبور کرده بنابراین شما دیگه تگ head رو از دست دادی و استایل ها که باید توی تگ head باشن دیگه نمیتونند باشن ولی برای اسکریپت ها هنوز تابع wp_footer رو بهش نرسیده پس میتونی برای اسکریپت ها ازش استفاده کنی.

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

 

موفق باشید

0

به اشتراک گذاری این پست


لینک به پست

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری