這個外掛並未在最新的 3 個 WordPress 主要版本上進行測試。開發者可能不再對這個外掛進行維護或提供技術支援,並可能會與更新版本的 WordPress 產生使用上的相容性問題。

CSS Page Ancestors

外掛說明

Please, keep in mind that THIS IS IN BETA. I’m relying to your feedback, positive or with suggestions, to release it out of beta

This plugin will give you the extra class you need in your tag of ALL (and not just one) of the anchestors of a page in WordPress.

This way you will be able to color a certain section of a site, based on the root’s ancestor – no matter how deep is the page (WordPress does this only for the direct father of a page)

Also, the printed class names are ancestor-[slug] and ancestor-id-[id]. This way, you can use it with your page slug (very conviniate if you move sites between instalations where id can change) and id (useful if you use a non-latin site, and slug can’t be used in css)

So, let’s imagine you have this tree of pages on your site:

  • Home
  • Clients
    • Web
      • EShops
      • Portfolio
    • Print
  • Contact

Let’s see this scenario: You want all the pages under ‘Clients’ to have a red background. Now, it’s easy to do that – but only for the ‘Web’, and ‘Print’ pages because WordPress gives you only the fathers in the body classes – in this case, the id of ‘Clients’. ‘Eshops’ and ‘Portfolio’ can also have a red background, but you will have to add a new class in your css with the id of ‘Web’ at your css. And, if you add pages under ‘Eshops’, same thing, you will have to add a new class in your css file with the id of ‘Eshops’ page. So, all this is easy if you do it yourself – but if you handle the site to an editor, that knows only to create content – you will have to add the class in the CSS every time someone adds a level to all this.

With this plugin all the ancestors of a page, no matter the depth will be in your body as class names – as a slug, and as an id. And you want all the pages under ‘Clients’ to have a red background you just add to your css .achestor-clients {background:red;} in your css, and you are done – no matter the level the final page is under.

Finaly, the order is with top ancestor first (in our example, Portfolio page will have “ancestor-clients ancestor-web”) – this way, it’s simpler in CSS to overwrite the -clients class with the -web attributes.

There is no writing on the database, or other change on the site, so, even if something goes wrong, just de-activate the plugin, and you’ll be fine.

螢幕擷圖

  • That's what you expect to see in view source of your page

安裝方式

  1. Upload the plugin files to the ‘/wp-content/plugins/plugin-name’ directory, or install the plugin through the WordPress plugins screen directly.

  2. Activate the plugin through the ‘Plugins’ screen in WordPress

  3. The new classes will be automatically added to your body (IF your theme is provided with the body_class() function)

常見問題集

Installation Instructions
  1. Upload the plugin files to the ‘/wp-content/plugins/plugin-name’ directory, or install the plugin through the WordPress plugins screen directly.

  2. Activate the plugin through the ‘Plugins’ screen in WordPress

  3. The new classes will be automatically added to your body (IF your theme is provided with the body_class() function)

Why did you build it?

I needed to CSS transform a sub-sub-page beased on his ancestors. Now, my body has the classes i need.

I’ve installed it, but nothing happens!

There’s no new menu, or any other change you should look for. Normally, the new classes should have been added automatically to your body. You can check it pressing ‘Ctrl+U’ in your site (this will ofcourse work only if you check a page with two or more ancestors)

Help, my site is ruinned!

Oh, that’s too bad – it did work fine for me 🙁 Nevertheless, let’s make your site work again: go to your plugins page, and deactivate my plugin. Things should go back to normal, no harm done.

使用者評論

這個外掛目前沒有任何使用者評論。

參與者及開發者

以下人員參與了開源軟體〈CSS Page Ancestors〉的開發相關工作。

參與者

將〈CSS Page Ancestors〉外掛本地化為台灣繁體中文版

對開發相關資訊感興趣?

任何人均可瀏覽程式碼、查看 SVN 存放庫,或透過 RSS 訂閱開發記錄

變更記錄

0.95

Removed the manual installation of the plugin, and converted it to a filter, so the users won’t touch their theme. (Thanks WordPress Plugin Directory Team for the tip!)

0.9

Beta release.

0.8

Added the anchestor-id-[id] css class, for non-latin page slugs

0.1

Hey, i have an idea! What if… 🙂