2013年01月22日

WordPressでソースコードを表示

my first piece of hand-written HTML in 1997!
my first piece of hand-written HTML in 1997! / laihiu


ワードプレスでソースコードを表示させるには、「SyntaxHighlighter Evolved」を使うと便利です。(注 本来は大括弧の前後のスペースは削除しないと動作しません)

[text]
[ text ]
対応言語
html,actionscript3,bash,coldfusion,cpp,csharp,css,delphi,
erlang,fsharp,diff,groovy,javascript,java,javafx,
matlab (keywords only),objc,perl,php,text,powershell,
python,r,ruby,scala,sql,vb,xml
[ /text ]
[/text]

対応している言語もいろいろある。

試しに先程のテキストを実際に表示させるとこうなる。

[text]
対応言語
html,actionscript3,bash,coldfusion,cpp,csharp,css,delphi,
erlang,fsharp,diff,groovy,javascript,java,javafx,
matlab (keywords only),objc,perl,php,text,powershell,
python,r,ruby,scala,sql,vb,xml
[/text]

SQLの場合

[sql]
select * from table1 where id = 1;
[/sql]
posted by totoro at 09:09| WordPress | 更新情報をチェックする

ウィジェットにフラッシュを表示する

Wordpress laptop
Wordpress laptop / Titanas


組合の方から(コンピュータ利用促進協同組合)からフラッシュで作成されたバナーをいただきました。このフラッシュは読み込む度に画像を差し替えてくれるというステキ仕様で、ただの画像ファイルとは段違いにカッコよいのだ。(試しにリロードしてみてください。画面右側のCCPの画像が変るのがわかりますか?)

そこで、早速、ウェブサイトに表示させてみようと思った...、のだが既存のウィジェットではフラッシュファイルの表示ではできない。画像を貼るのはJetpackのウィジェットで可能なのですが、フラッシュファイルを表示させる方法は標準ではないようです。

そこで再利用の事も考慮して、SWFファイルを表示させるウィジェットを追加する事にしました。

ウィジェットを追加するには、テーマファイルの中のfunctions.php(うちの環境では、wp-content/themes/cordobo-green-park-2/functions.php)に以下のコードを追加するだけでOKなようです。

でも、このやり方だと、テーマが更新された時に消えてしまうかもしれないので、あんまり良い方法じゃないかもしれません。

[sourcecode language="php" title="functions.php"]
<?php
/*
ウィジェットにSWFファイルを置く
*/
class SwfWidgetItem extends WP_Widget {
function SwfWidgetItem() {
parent::WP_Widget(false, $name = 'SWF貼り付けウィジェット');
}
function widget($args, $instance) {
extract( $args );
$title = apply_filters( 'widget_title', $instance['title'] );
$url = apply_filters( 'widget_url', $instance['url'] );
$width = apply_filters( 'widget_width', $instance['width'] );
$height = apply_filters( 'widget_height', $instance['height'] );
?>

<li <?php echo 'id="swfWidget"'; ?> class="widget swfWidget" >
<ul>
<li>
<div class="sb-title widgettitle"><?php echo $title ?></div>
</li>
<li>
<object data="<?php if ( $url ) echo $url ?>" width="<?php if ( $width ) echo $width ?>" height="<?php if ( $height ) echo $height ?>" type="application/x-shockwave-flash">
<param name="movie" value="<?php if ( $url ) echo $url ?>" />
<param name="FlashVars" value="value" />
</object>
</li>
</ul>
</li>
<?php
}
function update($new_instance, $old_instance) {
$instance = $old_instance;
$instance['title'] = strip_tags($new_instance['title']);
$instance['url'] = strip_tags($new_instance['url']);
$instance['width'] = strip_tags($new_instance['width']);
$instance['height'] = strip_tags($new_instance['height']);
return $instance;
}
function form($instance) {
$title = esc_attr($instance['title']);
$url = esc_attr($instance['url']);
$width = esc_attr($instance['width']);
$height = esc_attr($instance['height']);
?>
<p>
<label for="<?php echo $this->get_field_id('title'); ?>">
<?php _e('名称:'); ?>
</label>
<input class="widefat" id="<?php echo $this->get_field_id('title'); ?>" name="<?php echo $this->get_field_name('title'); ?>" type="text" value="<?php echo $title; ?>" />

<label for="<?php echo $this->get_field_id('url'); ?>">
<?php _e('SWFファイルのURL:'); ?>
</label>
<input class="widefat" id="<?php echo $this->get_field_id('url'); ?>" name="<?php echo $this->get_field_name('url'); ?>" type="text" value="<?php echo $url; ?>" />

<label for="<?php echo $this->get_field_id('width'); ?>">
<?php _e('幅:'); ?>
</label>
<input class="widefat" id="<?php echo $this->get_field_id('width'); ?>" name="<?php echo $this->get_field_name('width'); ?>" type="text" value="<?php echo $width; ?>" />

<label for="<?php echo $this->get_field_id('height'); ?>">
<?php _e('高さ:'); ?>
</label>
<input class="widefat" id="<?php echo $this->get_field_id('height'); ?>" name="<?php echo $this->get_field_name('height'); ?>" type="text" value="<?php echo $height; ?>" />
</p>
<?php
}
}
add_action('widgets_init', create_function('', 'return register_widget("SwfWidgetItem");'));

?>
[/sourcecode]
posted by totoro at 09:09| WordPress | 更新情報をチェックする

月間予定表の編集・広報業務のカイゼンの案件

カレンダーをの画像「カレンダーをめくりました。 / senov」
credit: senov


会社の予定表をGoogleカレンダーに書いてあり、その内容を一覧表に出すという仕事があるそうです。Googleカレンダーに入っているなら、それを共有するだけでええやんと思うのだが、そうは問屋が卸さない。これを Excel で再作成して紙で渡さなければならないとの事。

予定が入りしだい Google カレンダーに入力していき、最終的にはそれを見ながら、手作業で Excel に入力しなおしていると言う。

システム屋はこういう手作業を許せない。頼むから自動化させてくれーとお願いしてでも自動化したいのがシステム屋というものです。 調べてみると、Google Apps Script を使えば簡単にできるっぽい。 よーし、さっそくやってみるかー。

さっそく、やってみました。Google Apps Script は わかりやすく言うと Google 版の VBA です。すんません、わかる人にしかわかりませんね。Google ドキュメントを直接さわれる Java Script のマクロ と言ったらわかりますかね。

ま、そんなこんなで、Google カレンダーの内容をプログラムからひっぱってきて、ちょいちょいと加工して、最終的に Google スプレッドシートに貼りつけるプログラムを書きました。内容が特殊なのでここでは公開できませんが、こういった事はやるための仕組みがちゃんと用意されているのは、大変すばらしい事だと思います。

同じような事をOutlookとExcel でやろうとすると、もっと手間がかかったり、VBに悪態をつきながらプログラミングする事になった事と思います。

もっとも紙での出力を前提とした Excel ファイル の作成などというプログラミングがこれから何度もあるようなら、それはそれでなんだかなぁというような気がします。

Google Apps Script — Google Developers

初心者のためのGoogle Apps Scriptプログラミング入門
posted by totoro at 09:09| 案件 | 更新情報をチェックする

広告


この広告は60日以上更新がないブログに表示がされております。

以下のいずれかの方法で非表示にすることが可能です。

・記事の投稿、編集をおこなう
・マイブログの【設定】 > 【広告設定】 より、「60日間更新が無い場合」 の 「広告を表示しない」にチェックを入れて保存する。


×

この広告は90日以上新しい記事の投稿がないブログに表示されております。