wordpress」カテゴリーアーカイブ

特定カテゴリーの記事一覧を出力

これphpファイルに書いておけばいいと思うよ。
固定ページに入れたいんだがってときは、外部phpファイルを固定ページに読み込むといいよ。
この記事読んでね。

<?php
$posts = get_posts(array(
'posts_per_page' => 2, // 表示件数
'category' => '4' // カテゴリIDもしくはスラッグ名
));
?>
<?php if($posts): foreach($posts as $post): setup_postdata($post); ?>

<!--表示する内容が入ります。-->
<h3><a href="<?php the_permalink() ?>"><?php the_title(); ?></a></h3>
<p><?php the_time('Y/m/d') ?></p>
<p><?php the_excerpt(); ?></p>
<p><a href="<?php the_permalink() ?>">続きを見る</a></p>
<!--表示する内容ここまで-->

<?php endforeach; endif; ?>

WordPressでJqueryを使う時

こうする。

jQuery(function($){ });

で囲む。

具体的にはこう!

<script type="text/javascript">
jQuery(function($){
//ここに普通のjQueryの書き方で。下の行は例
$("#jquery_test_wp").html("jQuery WordPress構文テスト")
});
</script>

私が作ったのはこう!

jQuery(function($){
var $win = $(window),
$cloneNav = $('nav').clone().addClass('clone-nav').appendTo('body'),
showClass = 'is-show';

$win.on('load scroll', function() {
var value = $(this).scrollTop();
if ( value > 100 ) {
$cloneNav.addClass(showClass);
} else {
$cloneNav.removeClass(showClass);
}
});
});

重要。

投稿・固定ページ内にPHPファイルをインクルード(挿入/実行)させる

function.phpにこれを入れる

<?php

//ここから
function Include_my_php($params = array()) {
extract(shortcode_atts(array(
'file' => 'default'
), $params));
ob_start();
include(get_theme_root() . '/' . get_template() . "/$file.php");
return ob_get_clean();
}

add_shortcode('myphp', 'Include_my_php');
//ここまで

?>

これを固定ページに

[myphp file='papo']

ファイルをまとめたいとき

include(get_theme_root() . '/' . get_template() . "/tama/$file.php");

子テーマ化してるとき

function Include_my_php($params = array()) {
extract(shortcode_atts(array(
'file' => 'default'
), $params));
ob_start();
get_template_part("/myphpfiles/$file");
return ob_get_clean();
}

add_shortcode('myphp', 'Include_my_php');

検索用文字列:ショートコード

WordPressサイトを静的化するよ

お客さんが用意したサーバがまさかphpが動かないとは思わなかった。
今時そんなのアリか。あったんですけどね。

というわけで、静的なスタティックなhtmlにするためのプラグイン。

WP Static HTML Output
https://wordpress.org/plugins/static-html-output-plugin/

なんて便利なプラグインなんでしょうね。

こんな感じでいいと思います。

ちなみに、子テーマ化されてるとうまく書き出してくれないので、
ウルトラスーパーめんどくさいですが親テーマに戻してあげてください。

書き出したあとはちょっといじったりしましたが、(固定ページの中の画像とかは上手く出ないぽい?多分functions.phpでショートコードでURL書いてたからだと思いますが)
その程度です。とても素敵なプラグインでした₍₍ ◝(‘ω’◝) ⁾⁾ ₍₍ (◟’ω’)◟ ⁾⁾

プラグイン不要で投稿や固定ページでWordPress独自タグを使う!

別に固定ページ内に相対パスとか絶対パスでURL記述してもいいんですけど、
なんか気になるからWordPress独自タグ使おうって話です。

でも独自タグって固定ページじゃ使えないから、使えるようにfunction.phpに書いちゃおって話です。

function sc_bloginfo($atts, $content = null) {
extract(shortcode_atts(array(
'arg' => ''
), $atts));

return get_bloginfo($arg);
}

add_shortcode('bloginfo', 'sc_bloginfo');

あとはこういう感じで置き換え置き換え~ヽ(•̀ω•́ )ゝ✧

サイトのURL!

[bloginfo arg='url']

WordPressがインストールされてるURL!

[bloginfo arg='wpurl']

テンプレートのURL!

[bloginfo arg='template_url']

子テーマ化とかされてるときのテンプレートのURL!

[bloginfo arg='stylesheet_directory']

例としてこんな感じで使うよ。

<img src="[bloginfo arg='stylesheet_directory']/img/hogehoge.png" alt="" />

私は相対パスとか階層の把握がへたくそなので、これはとても重宝しています。
あとその辺気にしなくていいしカスタマイズ性も良いと思います(∩`ω´)⊃))

検索用文字列:ショートコード

h1画像をスラッグ名で判断して自動で出す

スラッグ名と同じ名前のh1画像を作れば
そのスラッグ名を取得して出力すればいいからいちいちページにファイル名を記述したりしなくていいよねって話。

でも階層が深いサイトにはオススメしないかな…
ページごとにh1画像作らなきゃいけなくなっちゃうので。
同じ画像がサーバーにいっぱいあるとか困るってことで、1ページに1ヘッダー画像なサイトにオススメ(・ω・)ノ

<?php
$page = get_post( get_the_ID() );
// 現在表示しているページの投稿IDから投稿情報を取得
$slug = $page->post_name;
// 投稿のスラッグを取得
?>
<h1><img src="<?php echo get_stylesheet_directory_uri() ?>/img/content/h1/<?php echo $slug; ?>.png" alt="<?php the_title(); ?>"></h1>

WordPressの管理バーが勝手にサイトトップにmarginを付与するのをやめる

WordPressにログインした状態でサイトを見ると上部に管理バー出ますよね。
その管理バーの高さ分、サイトのトップにmargin-top: ?pxって感じで強制的に付与されるのが嫌だったので
コールバックをfalseで返しました。(何故嫌かは後述)

これをfunctions.phpに書くだけです。

add_theme_support( 'admin-bar', array( 'callback' => '__return_false' ) );

WPサイトを構築するにあたって、ちょっとサイトの高さ制御をJSでやることになって、
それと上記の仕組みが競合しているのか表示がバグってしまったのです。

解決!