2016-11-24 69 views
0

我一直在搜索網絡左側右側和中心尋找解決方案,以獲得wp_enqueue_style()函數的工作,但我無法得到它。樣式不適用於wordpress插件| wp_enqueue_styles()

代碼段

//Add some styles to the script 
function sreub_enqueue_styles() { 

    //Use it! 
    wp_enqueue_style ('sreubmainstyle', plugin_dir_url(__FILE__) . 'sreubmainstyle.css'); 
} 

add_action('wp_enqueue_scripts', 'sreub_enqueue_styles'); 

我也附和我使用的wp_enqueue_style功能的路徑,這是正確的,但不知道爲什麼,當我把他們在CSS文件中的樣式沒有被應用?

+0

不是我不相信你:)但你確定你的CSS是好嗎? –

回答

0

切換主題並嘗試。或停用插件並再次激活。它應該工作。此代碼適用於我。

function sreub_enqueue_styles() { 
     wp_enqueue_style('sreubmainstyle', plugin_dir_url(__FILE__). 'sreubmainstyle.css'); 
    } 
    add_action('wp_enqueue_scripts', 'sreub_enqueue_styles'); 
0

讓我們做一對夫婦檢查,首先要確定那些根本原因就在於:

檢查路徑

讓我們來看看指定的排隊指示的路徑。您所說的CSS文件路徑與具有排隊回調的PHP文件位於同一個文件夾(而不是子文件夾)中。

這是這種情況?

檢查以查看CSS文件與PHP文件的關係。如果它位於子文件夾或其他地方,則需要修改路徑。

例如,假設CSS文件位於wp-content/your-plugin/assets/css/sreubmainstyle.css中,但排隊該文件的PHP文件位於wp-content/your-plugin/load-assets.php中,因此包含完整路徑的CSS文件的URL路徑將需要絕對路徑。

只是仔細檢查。如果路徑正確,那麼讓我們繼續下一個檢查。

加載插件後

主題的載荷爲主題的CSS之前。 WordPress首先加載插件,然後加載主題。您的代碼預先註冊了優先級爲10的回調函數。很可能該主題也使用默認值10.這意味着插件的CSS會將第一個加載到<head>中。

檢查<head>並查看樣式表是否加載到與主題的關係中。使用Firefox或Chrome開發工具檢查HTML標記。

  1. 如果你發現它不加載到DOM(在HTML標記的意思,然後我們又回到了一個排隊的問題。如果是,則進入下一個檢查。

  2. 否則,我懷疑它的存在,但主題的「style.css`文件之前。如果是的話,請繼續閱讀本節。

你希望你的風格來的主題之後,以確保你覆蓋的主題,並採取更高優先,在這種情況下,你想要將優先級更改爲大於默認值10的值。要做到這一點:

add_action('wp_enqueue_scripts', 'sreub_enqueue_styles', 50);

50套更高的優先級,這意味着它以後觸發。

哎呦,CSS是不是在DOM

尋找使用Firefox或Chrome的HTML標記,你發現它甚至沒有負載。它不在那裏。好的,你知道路徑是正確的。接下來你是否加載了正在排隊的文件?你是否在WordPress將該事件排入隊列之前加載它?

請檢查您何時加載文件。