忍者ブログ
19 January

[PR]

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

14 January

WPインストールディレクトリを1階層下げたい かつ表示されるのは上位ディレクトリ

http:://*****/wp/ というフォルダにインストールしたけど、
http:://*****/ というURLにしたいっていうお話はたくさんある。

私は反対に
http:://*****/ にぶちまけたけど、
http:://*****/wp/ に階層下げて移して なおかつ
http:://*****/ で表示されるようにしたい


WordPress を専用ディレクトリに配置する


ルートディレクトリにインストール済みの場合

http://wpdocs.sourceforge.jp/WordPress_%E3%82%92%E5%B0%82%E7%94%A8%E3%83%87%E3%82%A3%E3%83%AC%E3%82%AF%E3%83%88%E3%83%AA%E3%81%AB%E9%85%8D%E7%BD%AE%E3%81%99%E3%82%8B

WordPress をルートディレクトリにインストール済みの場合、WordPress ファイルを専用ディレクトリへ移動するには次のようにします(ディレクトリ構成例も参照)。

(注意) 作業の順番を間違えたり飛ばしたりすると、サイトにアクセスできなくなることがあります。一つずつ確実に進めましょう。

  1. WordPress のコアファイルを置くための、新しいディレクトリを作成する(この手順では仮に wp とする)。
    (linux の場合、www ディレクトリで mkdir wp を実行。十中八九、作成した wp ディレクトリで "chown apache:apache" することになるでしょう)
  2. 管理パネル 設定 > 一般設定パネルを開く
  3. WordPress のアドレス (URL) 欄を、新しい WordPress コアファイルの URL に変更する。例:
    WordPress のアドレス (URL): http://example.com/wp
  4. サイトのアドレス (URL) 欄を、ルートディレクトリの URL に変更する。例:
    サイトアドレス (URL): http://example.com
  5. 変更を保存をクリック。 (この時点ではエラーメッセージが出ても気にせず、サイトを表示しようとしないでください。「ファイルが存在しない」というメッセージが出るはずです)
  6. WordPress コアファイルを、手順 1 で作成した新しいディレクトリ(「WordPress のアドレス」)へ移動する
  7. WordPress ディレクトリにある index.php  .htaccess ファイルを、手順 4 で設定したサイトのルートディレクトリ(「サイトのアドレス」)へコピーする(移動ではなくコピーすることに注意)。
    • パーマリンク設定を使っていない場合、htaccess ファイルは存在しません。
    • WordPress を Windows (IIS) サーバー上で動かしており、パーマリンク設定を使っている場合は、htaccess ファイルの代わりにweb.config ファイルが WordPress のディレクトリにあるはずです。上記の通り、index.php をルートディレクトリに(移動ではなく)コピーし、web.config ファイルをルートディレクトリに(コピーではなく)移動してください。
    • 存在するはずの .htaccess ファイルが見えないときは、FTPクライアント隠しファイルの表示設定を行なうこと。
  8. ルートディレクトリの index.php ファイルをテキストエディタで開く
  9. 次の修正を行ない、ファイルを保存する。
    修正前:
    require('./wp-blog-header.php');
    修正後: WordPress コアファイルの新ディレクトリ名を使います。
    require('./wp/wp-blog-header.php');
  10. 新しい URL からログインする。例えば http://example.com/wp/wp-admin/ など。
  11. パーマリンクを設定している場合、パーマリンク設定パネルを開き、パーマリンク構造を更新してください。.htaccess に適切なパーミッションを設定してあれば、WordPress が自動で .htaccess を更新します。もし WordPress が .htaccess を書き換えられない場合、新しいリライトルールが表示されるので、(メインの index.php ファイルと同じディレクトリの).htaccess ファイル内に手動でコピーしてください。



9、 のところでindex.phpを開くと require((_FILE) '/wp-blog~~~~');
みたいな何か余計なのがくっついていた。
ここを残したまま上記のようにフォルダ名を付け加えたらエラーログがでた。
上記とまったく同じにするために余計な FILE~ みたいなのを消したらちゃんと表示された

ページを確認してみて正常に表示されないときは、とりあえずパーマリンク設定をそのまま保存しなおしてみる。白いページになったのでやったら直った。

最初にブログを作ってルートディレクトリにwpをぶちまけたが、
あとでショップを作りたくなって別のWPをインストールしなければならなくなった。
welcartはブログと共存できるが色々とめんどいし、welcartのせいで色々と制約がでる。
もう考えるのも面倒だしwpを分けたほうが管理も楽。
メディアライブラリが商品画像で汚れまくるのでわけたほうがわかりやすい。

しかしwpの中の別フォルダにwpとなると、パーマリンクの関係でリダイレクトされてうまくいかないらしい。それもそのはず、wpは末尾のURLが本物であって途中が変わってもリンクされるから。
ではマルチサイト化をしようか、と思ったらwelcartじゃマルチサイトに対応していない。
不具合がでたり動かなかったりしたらサポートに聞いても対応外。
結局ルートディレクトリに2つのwpフォルダを作り、一方をルートディレクトリURLに
みせかけるという方法にする。
PR
14 January

カスタム投稿タイプ custom post type UI

カスタム投稿タイプ custom post type UI

ブログ、固定ページ以外に、管理画面で別メニューにて投稿欄を作れる
例えばブログの中に「お知らせ」カテゴリを作って「お知らせ」スラッグにリンク貼れば同じようなことだけど、「お知らせ」というメニューを管理画面サイドバーに別で作れば、完全に分けられる。客にわかりやすく実装できる、など。

詳しいまとめ
新規作成時はここを見て設定する
http://kotori-blog.com/wordpress/custom_post_type_ui/
http://kotori-blog.com/wordpress/posttype_taxonomy/
http://kotori-blog.com/wordpress/custom_post_type_permalinks/

1、まず上記サイトみて設定。カスタム投稿タイプ作り。
2、archive-○○○.php、page-○○○.php、single-○○○.php を必要であれば
カスタム投稿タイプに合わせて作成する。
archive-○○○.php はカスタム投稿タイプのトップページになる

archive-○○○.php を使いたい場合の注意点
設定画面で「Has Archive」を True にする。
archive.phpアップしたのに、エラーログがでて画面が白い。
なんで?has archive はtrueにしたはず・・・と思って確認すると、falseになっていた。しね
trueにしてもう一度archive画面をリロードするが白いまま。
パーマリンク設定をそのまま更新保存せよっていうのをどこかでみたので、
何も変更せず保存を押してリロードしたらちゃんと表示された。

アーカイブのパーマリンクを日付URLにしたい、月別アーカイブを出したいときは
「custom post UI パーマリンク」というプラグインをいれる

http://www.nishi2002.com/7995.html
カスタム投稿タイプの月別アーカイブリストを表示させる

<ul>
<?php wp_get_archives('type=monthly&post_type=カスタム投稿タイプ名'); ?>
</ul>


サイドバーに月別アーカイブを出したかったので、上記をphpに直接かくか、
ウィジェットのテキストにショートコードを用いて書き込む。
05 January

決められたwidth height に絶対画像サイズをあわせる

<div>
<a href="#">
<img src=" ~~~~~ ">
</a>
</div>


a {
    max-width: 250px; //max-をつける理由忘れた
    height: 300px; //縦サイズ絶対指定する
    overflow: hidden; //縦長の画像のはみ出た部分を非表示
    display: block; //imgの上の階層はブロック要素にする
    text-align: center; //横のセンターに配置する
    line-height: 300px; //なんの理由があるか忘れた
}
img {
    max-width: 250px; //レスポンシブは max- をつけないとダメ
    height: auto; // 横サイズに合わせて縦が勝手に変動
    vertical-align: middle; //縦サイズが足りない画像がきても中央に配置する
}

※注意点

<div>
<a href="#">
<span>
<img src=" ~~~~~ ">
</span>
<p>~~~~~~</p>
</a>

</div>

<p></p>をリンクを含めないなら上記のcssでいいが、全部囲ってリンクしたい場合、
imgのみを囲うものがないとダメ。
imgのみ囲うもので縦横サイズを指定し、ブロック要素にする必要がある
spanなどで囲う。その場合 a に指定していたcssは spanに指定する

28 December

category.phpに子カテゴリー一覧を出力したい

http://cat-speak.net/2013/01/21/600/

<?php
//現在のカテゴリが子カテゴリを持つかどうか判定する
$children = get_category_children($cat);

//子カテゴリを持つなら、子孫カテゴリのリンクリストを表示
if ($children) : ?>
  <ul>
  	<?php wp_list_categories('title_li=&child_of='.$cat); ?>
  </ul>
<?php 
//子カテゴリを持たないなら、タイトルリンクを表示
else: ?>
	<ul>
		<?php while(have_posts()) : the_post(); ?>
			<li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
		<?php endwhile; ?>
	</ul>
<?php endif; ?>


ショップのカテゴリー分けでサイドバーが長くなってしまい、いちいち戻ったり見るのがめんどくさい場合がでてくる。
楽天みたいにパンくずリストを複数だしたいし、子カテゴリーの羅列を上部に出してクリックしやすくしたいと思い探した。

その際、「子カテゴリーがない場合はタイトル一覧を出す」というのはショップサイトにとって邪魔になるので消す。新着やオススメでやるとひどいことになる。
27 December

display:inline-block; で横並びにしたときの空白を消したい

http://naoyu.net/css/css-inline-block-space/274/

<div class="oya">

<div class="kodomo"> ~~~~~ </div>
<div class="kodomo"> ~~~~~ </div>

</div>


.oya{
letter-spacing:-0.4em;
}
.kodomo{
letter-spacing:normal;
}


htmlのdivを詰めたりコメントアウトを足したり、フォーマットしちゃたらおじゃんになっちゃいそうです。
だからcssだけでできるこの方法がいいと思います。