WordPressはGPL

 

便利に活用させてもらっている

 TinyMCE Clear

というプラグインがエラーをはいていたので修正したいと思い、ライセンスについて調べていたら、WordPress本体に関する興味深い記事を発見。

WP−D http://wp-d.org/2012/11/07/1046/

WordPressはGPLライセンスです・・・と。

GPLライセンスで頒布されているプログラムは、それを受け取った者が、修正を加えてもいいし、他のプログラムに組み込んでもいいし、自由に改変できる。ただ、それを再頒布する場合は、それを受け取った者も同じように自由に改変できる権利を持つということ。

 

WordPressを使ってたくさんのサイトを制作していますが、基本的には、WordPress本体や、プラグイン改変していません。それは、アップデートの対応が大変だから。でも、開発が終わっているようなプラグインで使い勝手の良いモノは、修正やカスタマイズして使っています。

ご要望があれば、再頒布も可能なので、ご相談ください。

 

で、このプラグインのエラーの原因は、簡単に直るんですけどね。

 

Category Checklist Tree

WordPressの微妙に不便なところを解消してくれる数々のプラグインの中から、
企業向けWordPressカスタマイズサイトの制作過程で、本当に役に立ったモノをご紹介!

投稿を保存すると、チェックを入れたカテゴリーが一番先頭に表示され、順番が変わってしまうんです。
これって、不自然ですよねぇ〜。
しかも、カテゴリーを階層化しているても、階層化を無視して、チェックを入れたカテゴリーを一番上に持ってきます。

コレを解消してくれるのが

Category Checklist Tree

使い方は、プラグインをインストールして有効化するだけ。
設定することは何もありません。

これで、どのカテゴリーを選んでも、開いたときと同じ順番、同じ階層を保って表示してくれます。



=== Category Checklist Tree ===
Contributors: scribu
Tags: admin, ui, categories, hierarchy
Requires at least: 3.4
Tested up to: 3.7
Stable tag: 1.3.2
License: GPLv2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html

WordPress「画像の編集」のエラーについて ≪解決済み≫

現在一部のお客様のサイトにて、

アップロードした画像を、編集する機能が正常に作動しないため、縦横を変更したり、トリミングしたりすることが出来ません。

error

自動バックアップに使用しているプログラムの修正に伴う弊害です。
現在調査中ですが、「自動バックアップ」と「画像の編集」のどちらか一方だけであれば機能しますのでご連絡ください。現状は、バックアップを優先しています。

 

*********************
詳しい説明はこちら
*********************

バックアッププラグイン「BackWPup」のバックアップ先をDropBoxにしている場合、
SSLチェックのエラーが発生するため、WordPressのサポートフォーラムに掲載されている

BackWPup disable SSL connection verifying
https://wordpress.org/support/topic/error-dropbox-api-59-unknown-cipher-in-list

などのfixで対応している方も多いと思います。
ただ、このfixを適用すると、WordPressの機能の一つである、アップロードした画像ファイルの編集機能が使用できなくなります。
詳細は調査中です。

*********************
追記 2014.10.25
*********************

このfixの途中で一つcodeが紹介されていますが、新しく正常に動くcodeが紹介されていますね。こちらを使用すれば解決できます。

[php]
<?php
/**
* Plugin Name: BackWPup disable SSL connection verifying
* Plugin URI: https://marketpress.com/
* Description: Disables the verifying from SSL connections in backup destinations
* Author: Inpsyde GmbH
* Author URI: http://inpsyde.com
* Version: 0.1
* Network: true
* License: GPLv3
* License URI: http://www.gnu.org/licenses/gpl-3.0
*/

add_filter( ‘backwpup_cacert_bundle’, ‘backwpup_disable_ssl_verify’ );
function backwpup_disable_ssl_verify ( $file ) {

return FALSE;
}

[/php]

この空白はなんですか?

flash1

ちまたの、「ちょっとおしゃれな人たち」の保有率が格段に高いiPhoneやiPad。

9月9日には新らしい端末が発表されると噂のiPhoneですが、
クロッキーワークスでも、初心者の方にオススメしているのはiPadやiPhone。
ただ、iPhoneは高齢の方には小さすぎる・・・

今回の発表で、少し大型のものが出ると噂なので、期待大!!

そんな、iPhoneとiPadですが、欠点は標準でFlashを使ったサイトが見えないこと。

パソコンでは、見えているスライドショーやメニュー、アニメーションなどが、単なる

「空白」

 なんです。不自然なスペースが空いているだけ。

これはもったいない。

是非ともそのサイト非Flash化のお手伝いさせてください!

・Flash部分のみの差し替え
・いっそのこと、スマートフォン・タブレットの専用サイトの開設
・サイトフルリニューアルで、いろいろな端末からも見えるようにリニューアル

など、様々なご提案をご用意しております。
お気軽にお問い合せください。

bodyのclassにスラッグを入れる

 「このページだけ h3要素は別の色」とかページによって背景の色を変えたいとか

bodyに標準で追加されるクラスは、投稿やページの番号を使用するので、サーバー移行時など、ポストの番号が変更になる恐れがあるときは使えないのですが、ページネームいわゆる「スラッグ」を使えばユニークなクラスを追加することが出来ます。

ただ、日本語でタイトルをつける場合は、スラッグは・・・そこで、スラッグ名を自動で英数字に変換時し、変換したスラッグ名を自動でbodyのクラスに追加すれば投稿やページ毎にユニークなクラス名をつけることが出来ます。

function.php

//スラッグを日本語からポストタイプとポストIDを使った英数字に変換
function auto_post_slug( $slug, $post_ID, $post_status, $post_type ) {
  if ( preg_match( '/(%[0-9a-f]{2})+/', $slug ) ) {
   $slug = 'slug-'.utf8_uri_encode( $post_type ) . '-' . $post_ID;
  }
 return $slug;
}
add_filter( 'wp_unique_post_slug', 'auto_post_slug', 10, 4  );
//bodyのクラスにスラッグを入れる
function add_pagename_class($classes = '') {
  global $post;
  if (is_page()) {
             $page = get_page(get_the_ID());
             $classes[] = $page->post_name;
         }
    return $classes;
}add_filter('body_class','add_pagename_class');

 ちなみに、ちょっと変更すればいろいろなモノを追加できることが分かります。

//bodyのクラスに親のスラッグを入れる
function add_ancestor_class($classes) {
    global $post;
    if (is_page() && (!is_front_page()) ){
        if($post->ancestors){
            foreach($post->ancestors as $post_ancestor_id){
                $post_id = $post_ancestor_id;
            }
        } else {
            $post_id = $post->ID;
        }
        $ancestor_post = get_page($post_id);
        $ancestorSlug = $ancestor_post->post_name;
        $classes[] = 'ancestor_'.$ancestorSlug;
    }
    return $classes;
}
add_filter('body_class','add_ancestor_class');
//bodyのクラスにtaxonomyのスラッグを入れる
function add_taxonomy_class( $classes ){
  if( is_singular() )
  {
    $custom_terms = get_the_terms(0, 'display');
    if ($custom_terms) {
      foreach ($custom_terms as $custom_term) {
        $classes[] = 'tax_' . $custom_term->slug;
      }
    }
  }
  return $classes;
}
add_filter('body_class','add_taxonomy_class');

すべてfunction.phpを変更するので自己責任でお願いします。

もし更新後に「真っ白」になってしまったら慌てず、
FTPでfanction.phpをダウンロードして、間違いを修正してからアップロードすれば元に戻るはず。