[全体] [技術メモ] [blog製作記録] 各一覧の該当ページへ

ブログ革命(プチ)

[技術メモ/ blog製作記録] 2008年7月9日(水曜日) 19:16

個人的にはブログインターフェイスの革命(ノ∀`)

記事の呼び出し方を増やしました。
特定の記事単体()だけではなく、特定記事を含む「リスト」()で呼び出せるようにしました。
こんなのがなぜ革命的かと言いますと、これで単体記事のページから、その記事を含むリストのページに行けるのです。最初にたどり着いたのが単体記事でも、そこから簡単に時系列リストの該当ページに行けるのです。
これで、単体記事から記事リストに飛びたい等で懸案だった、インターフェイスの一部が実装できました。

一覧へ

無理やり実装

とはいえ、SQLもPHPもwordpressもいまいち分かっていない私。
実装の内実は酷いものです・゚・(ノД`)・゚・

  • 戻れるのは全記事時系列一覧のみ(つまりカテゴリ無視)
  • コアファイルを直接書き換えている(つまりバージョン変更でお陀仏)

等々、まだまだ問題が山積。

実装方法(仮)

ここから進めるかどうかも怪しいですが(仮)と言わせてください(ノ∀`)

wordpressのバージョンは2.5.1
query.php の1426行目に以下を挿入

		//rtype
		//paged定が無くpagewith指定があれば
		if (!$_GET['paged']) {
			$pagewith = ereg_replace('[^0-9]+','',$_GET['pagewith']); //ごみを取る
			if ($pagewith) {
				$pagewithby = "and ID>$pagewith";
				$prerequest = " SELECT COUNT(*) as postCounter FROM $wpdb->posts $join WHERE 1=1 $where $pagewithby $groupby $orderby";
				$this->prerequest = apply_filters('post_counter_request', $prerequest);
				$this->postposition = $wpdb->get_results($this->prerequest);
				//$paged $limit作り直し
				$paged = floor( $this->postposition[0]->postCounter / $q['posts_per_page'] ) + 1;
				$pgstrt = ($paged -1) * $q['posts_per_page'];
				$q['paged'] = $paged;
				$limits = 'LIMIT '.$pgstrt.','.$q['posts_per_page'];

			}
		}

同、link-template.php の611行目に以下を挿入

	$request = remove_query_arg( 'pagewith' );

後は、単体記事のスキン(single.php)のそれっぽいところから
<a href=”<?php bloginfo(‘url’); ?>/?pagewith=<?php the_ID(); ?>#post-<?php the_ID(); ?>”>等とリンク。

未消化の課題

  • カテゴリで抽出したリストに飛びたい
  • プラグイン化したい

とりあえず、この二つくらいは何とかしたいものです。
と言うか、どなたかやってくださいヽ(・∀・)ノ
と言うか、このくらいの機能、標準でつけやがれこのやろうです(笑)

Comments (1)

1件のコメント

  • ピンバック by 近頃の、とあるR。 » ブログ革命(プチ)2 2008 年 7 月 14 日 19:32

    [...] ブログ革命(プチ)のコードがちょこっとだけまともに。 コアファイルを直接書き換えている点はまだそのまま(ノ∀`)ですが、 記事などから自由に飛べるリストの種類が強化されました [...]