Enhancing CSS 1.2 & Enhancing JS 1.0

以下の二つのプラグインをアップデートしました。

http://firegoby.theta.ne.jp/wp/enhancingcss

http://firegoby.theta.ne.jp/wp/enhancingjs

修正内容

WPMLなどの一部のプラグインでは、home_url()へのフィルターフックでURL末尾にクエリー文字列を追加することがあります。

これらのプラグインと併用した際に、今回アップデートしたプラグインが出力するCSSやJavaScriptへのリンクが切れてしまう不具合を修正しました。

具体的には、home_url() としていた部分を get_option(‘home’) に変更することで、フィルターフックを回避しています。

この対処方法は、ちょっと気持が悪いのですが…もっといい方法があったらアドバイスください。

Enhancing CSS 1.0

WordPressのEnhancing CSSプラグインをアップデートしました。

http://firegoby.theta.ne.jp/wp/enhancingcss

修正内容

  • マルチリンガル系のプラグインと併用すると発生する不具合に対応しました。

具体的には以下のような修正を行いました。

修正前

get_bloginfo('url')

修正後

site_url();

    Enhancing CSS 0.6

    Enhancing CSSをバージョンアップしました。

    Enhancing CSS – WordPressに外部CSSを追加するプラグイン

    修正内容

    ビジュアルエディターにEnhancingCSS.cssを適用しない場合に(「ビジュアルエディターにスタイルを適用する」のチェックボックスがオンになっていない場合)、既存のビジュアルエディター用のcontent_cssがまるごと消えてしまう不具合を修正しました。

    Enhancing CSS 0.5 & Enhancing JavaScript 0.4

    本サイトで配布している以下の二つのプラグインをアップデートしました。

    修正内容

    今回の修正はソースの色分けに使用しているライブラリCodemirrorのアップデートです。

    Enhancing CSS 0.4 & Enhancing JavaScript 0.3

    本サイトで配布している以下の二つのプラグインのバグを修正しました。

    修正内容

    WordPress を専用ディレクトリに配置する設定を行っているときに、ただしくCSSやJavaScriptが添付されない不具合を修正しました。

    @jhypno 様、不具合の原因究明にお付き合いいただいて、ありがとうございました。

    Enhancing CSS 0.3

    WordPressに外部CSSを添付するプラグインの”Enhancing CSS”をアップデートしました。

    更新内容

    条件付きGET(Conditional GET)に対応

    CSSのデータを出力する際に、”Last-Modified”ヘッダを出力し、クライアントからの”If-Modified-Since”または”If-None-Match”に条件が一致した場合に”HTTP/1.1 304 Not Modified”を返します。

    これによりブラウザ側でCSSがキャッシュされパフォーマンスが向上します。

    子テーマを作成するためのstyle.cssをダウンロード

    保存した外部CSSをもとに、子テーマを作成するためのstyle.cssがダウンロード出来るようになりました。

    ダウンロード用のstyle.cssには親テーマのstyle.cssへのリンクや、子テーマとして動作するための最低限のコメントが、自動的に挿入されます。

    子テーマ作成に関する詳細は以下のページを御覧ください。

    子テーマ – WordPress Codex 日本語版

    Enhancing CSS & JavaScriptでTwenty Tenテーマをカスタマイズ

    このサイトで配布しているEnhancing CSSプラグインとEnhancing JSプラグインは、それぞれ外部CSSと外部JavaScriptをWordPressに添付するプラグインです。

    今回の記事では、これらのプラグインを使ってTwenty Tenテーマをカスタマイズする方法をご紹介します。

    カスタマイズ例

    以下の画像はTwenty TenテーマにEnhancing CSS及びEnhancing JavaScriptを使用して、外部CSS及びJavaScriptでカスタマイズした事例です。

    CSSとJavaScript以外はメニューの設定も含めて全て同じです。もちろんテーマファイルの書き換えも一切行っていません。

    はじめに

    以下のサンプルを試す前にプラグインをインストールしてください。

    メニューの位置を変更する

    カスタマイズ例ではメニューの位置が画像の上部に変更されています。
    この修正は、CSSでも可能ですが、JavaScriptにて行ないました。

    1. まず、Enhancing JavaScriptの管理画面(外観->拡張JavaScript)を開いて、Enqueue Scriptsの中からprototypeにチェックを入れて保存してください。
      以上の操作でテーマファイル側にprototype.jsが組み込まれます。
    2. 以下のソースをコピーしてJavaScriptのエディター内にペーストしてください。

    コピー&ペーストするソース

    function init(){
      var oImg = $('branding').getElementsByTagName('IMG')[0];
      if (document.getElementsByTagName('BODY')[0].className.indexOf('home') >= 0) {
        $('masthead').appendChild(oImg);
      } else {
        $('branding').removeChild(oImg);
      }
    }
    
    Event.observe(window, 'load', init);

    サイトタイトル部分に画像を使用する

    1. まず任意のロゴ画像を作成して、WordPressのメディアからアップロードして、画像のURLをコピーしてください。
    2. 以下のソースを”外観” -> ”拡張CSS” のCSSエディター内にペーストして、画像のパスの部分をアップロード画像と書き換えてください。(画像の横幅や高さもかえましょう!)
    #site-title a
    {
      background-image: url(/wp-content/uploads/2010/09/buttonw-grey-8bit.png);
      background-position: left top;
      background-repeat: no-repeat;
      display: block;
      width: 178px;
      height: 58px;
      text-indent: -9999px;
      overflow: hidden;
    }
    
    #site-description
    {
      text-align: right;
    }

    サイトを確認してください。
    もし、何も表示されていなければ画像のURLに間違いがあります。
    また、ロゴ画像の上下左右が欠けている場合は、横幅と高さを調べて上記のソースと差し替えてください。

    メニューをカッコよくする

    以下のソースを”外観” -> “拡張CSS” のCSSエディター内に追加してください。

    /* メニュー全体の背景の設定 */
    #access
    {
      background-color: #ffffff;
      background-image: url(/wp-content/uploads/2010/09/menu.png);
      background-repeat: repeat-x;
      background-position: left top;
      color: #000000;
      border-bottom: 1px solid #cccccc;
      margin-bottom: 5px;
      padding: 5px 0;
    }
    
    /* メニューのリンク文字列 */
    #access a
    {
      color: #000000;
    }
    
    /* メニューの項目別の背景 */
    #access li > a
    {
      background-image: url(/wp-content/uploads/2010/09/menu-items.png);
      width: 150px;
      height: 40px;
      padding: 0px;
      text-align: center;
      margin-right: 3px;
    }
    
    /* メニューの項目別の背景(マウスオーバー及びカレントページ) */
    #access ul li.current_page_item > a,
    #access li:hover > a
    {
      background-image: url(/wp-content/uploads/2010/09/menu-items.png);
      background-position: left bottom;
      color: #666666;
    }
    
    /* ポップアップメニューを無効にする */
    #access ul li:hover > ul
    {
      display: none;
    }

    まとめ

    すごく、ざっとした説明で恐縮ですが、以上のような手順で、JavaScriptによるHTMLの書き換え+CSSというテクニックを使用すれば、複雑なテンプレートタグを使用しなくても十分に実用的なサイトが作れることがおわかりいただければ幸いです。

    参考までにサンプルで使用した画像をおいておきますので、ご利用いただければ上記の事例が簡単に再現できると思います。

    サンプル画像のダウンロード

    Enhancing CSS 0.2

    先日リリースしたEnhancing CSSのアップグレードを行ないました。

    WordPressに外部CSSを追加するプラグイン

    変更内容

    1. CSSの入力用のインターフェースに、行番号表示や、「取り消し」「やり直し」「検索」「置換」のボタンの追加など、ビジュアルエディターとしての機能を向上しました。
    2. 同梱のCodeMirrorのライセンスファイルも添付しました。
    3. その他、いくつかの外観に関する細かい修正を行ないました。

    WordPressプラグイン”EnhancingCSS”をリリース

    WordPressの管理画面上からCSSを編集し、外部スタイルシートとしてサイトに添付するプラグインを作成しました。

    詳しくは以下のページへ。

    firegoby » WordPressに外部CSSを追加するプラグイン

    売りは、ビジュアル エディターに添付することが可能なことと、編集画面が色分けされることです。