IMUZA.com

Xserver<<WordPress(ConoHa)<<はてなブログ

ホーム / laravel4 / さらに「Laravel4入門」ビューコンポーサー、ロケール、Movable Typeの読み込み

さらに「Laravel4入門」ビューコンポーサー、ロケール、Movable Typeの読み込み

2014/11/22 laravel4, php

ビューコンポーサー View composer

ブログタイトルやキーワードなどブログの基本的な項目を設定できるようにしてみました。ソースは GitHub にあります。

ausnichts/laravel4-blog · GitHub

テーブル settings の1つ目のレコードに保存するようにしています。

呼び出し方は、「Laravel4入門(11)」で使ったビューコンポーサーという方法でいけます。

app/composer.php

に以下を加え、

View::composer(‘*’, function($view) {
  $view->with(‘settings’, Setting::find(1));
});

それぞれ view ファイルに

<meta name=”description” content=”{{ $settings->meta_description }}”>
<meta name=”keywords” content=”{{ $settings->meta_keywords }}”>
<title>{{ $settings->site_title }}</title>

などとします。

ロケールの変更

せっかく言語ファイルを作りましたので、ロケールを変更できるようにしたのですが、ロケール変更時に

App::setLocale(‘ロケール’);

とすれば簡単に変更できるかと思いましたが、これではダメで、

app/start/global.php に、

App::setLocale(Setting::find(1)->language);

と書いておかないと変わらないですね。セッションを使う方法が以下にありました。

laravel – t can not switch language in Laravel4 – Stack Overflow

ただ、現状では、基本設定そのものがそうなんですが、デフォルトで settings の一番目のレコードにデータが入っていないとエラーになります。

Movable Typeの読み込み

これは Laravel というよりも php の話になりますが、日本語のサンプルデータをどうするか考えている時に、この「@半径とことこ60分」のブログデータを読み込めないかと考え、Movable Type 形式のファイルを読み込む関数を作ってみました。

(参考)
Movable Type 4 ドキュメント
WordPress › Movable Type and TypePad Importer « WordPress Plugins

コメントや ping など現状では取り込めないデータは全て破棄しています。

また、カテゴリは該当するものがない場合は自動登録し、カテゴリが設定されていないものは uncategorized を作成するようにしました。

ということでこんな感じにできあがりました。

9時過ぎていたのに Google Inbox から招待状が来た!
MX Player の AC3 コーデックがないと言われたら ARMv7 NEON を入れる
Twitter
Facebook
ブックマーク
LINEで送る

最初のサイドバー

最新記事

2023/01/26

WordPress:メニューのid,classを整理カスタマイズ

2023/01/19

WordPress:JSON-LD構造化データをプラグインなしで出力

2023/01/11

WordPress:OGPタグをプラグインなしで挿入する

2022/12/27

WordPress:canonicalタグをプラグインなしで制御する

2022/12/21

WordPress:robotsメタタグをプラグインなしで制御する

最新記事を一覧で見る

よく読まれている記事

よく読まれている記事を一覧で見る

カテゴリー

  • はてなブログ214
  • WebTips108
  • javascript98
  • Joomla!88
  • Windows68
  • CSS63
  • Wordpress59
  • Joomla!更新53
  • Linux49
  • はてなテーマ45
  • Plamo33
  • Google32
  • はてなプラグイン25
  • php22
  • Node.js18
  • Ubuntu16
  • SASS16
  • laravel415
  • Chrome11
  • cms-style10
  • iPhone9
  • genesis6
  • ConoHa WING6
  • Git入門6
  • Python5
  • Android5
  • スマートフォン4
  • PC全般4
  • 静的サイトジェネレーター3
  • Firefox3
  • SSD3
  • Facebook3
  • Blankslate3
  • Docker3
  • Mactype2
  • GitHub2
  • youtube1
  • rails入門1
  • Twitter1
  • はてなブクマ1
  • 映画1
  • Xserver1

Footer

My Web Sites

  • @半径とことこ60分
  • そんなには褒めないよ。映画評
  • IMUZA.com
  • GitHub

Related Sites

  • WordPress公式
  • WordPress関数リファレンス
  • PHPマニュアル

Contact Us

  • お問い合わせフォーム
  • Twitter
  • Facebook
  • Feedly

Copyright © 2023 · IMUZA.com