How to published local wordpress site to Internet

Have to rewrite redirect canonical url, and rewrite ip-address.
Can be anyway…

1. Edit: wp-content/plugins/obbuffer/functions.php.
2. Edit: wp-includes/functions.php, add code 3 lines.
3. Upload these files.
4. activate obbuffer plugin.

obbuffer_plugin_wordpress

ローカルなWordPressサイトをインターネットに公開したかったのですが、
簡単にはいきません。
とりあえずこんな方法で実現できましたが。
問題が色々あると思われます。

Thu May 3 2012 14:05:44 | Wordpress | No Comments »

Display Realname and email on Roundcube webmail 0.7.2

patch: roundcube2.patch

Roundcube にユーザーの表示名とメールアドレスを表示したかったのですが、
どうやったらいいか分からない。
正式にサポートされた方法があるんでしょうか?

Thu May 3 2012 13:31:52 | php | No Comments »

2012年の六曜、祝祭日 CSVデーター

間違いがあるかもしれませんので、ご利用の際には各自ご確認ください。
またご連絡いただけると助かります。
文字コードはshift-jis
2012_rokuyo_holiday.csv

Wed Nov 30 2011 11:10:16 | Download and Ec3popupinfo | No Comments »

年月日入力の View Helper

年月日入力の View Helper を試しに作成してみた。不完全かも。
ネット等でいろいろ調べたりして作成しのだけれどネット情報が意外と少なかった。

<?php

/**
 * Abstract class for extension
 */
require_once 'Zend/View/Helper/FormElement.php';

/**
 * Helper to generate a "DbDatetime" element
 *
 */
class View_Helper_FormDbDatetime extends Zend_View_Helper_FormElement {

    /**
     *
     */
    public function formDbDatetime($name, $value = null, $attribs = null) {

        $info = $this->_getInfo($name, $value, $attribs);
        extract($info); // name, value, attribs, options, listsep, disable
        // build the element
        $disabled = '';
        if ($disable) {
            // disabled
            $disabled = ' disabled="disabled"';
        }

        $codeLength = array(
            'year' => 4,
            'month' => 2,
            'day' => 2,
            'hour' => 2,
            'minutes' => 2,
            'seconds' => 2
        );

        if (isset($attribs['separator'])) {
            $separator = $attribs['separator'];
            unset($attribs['separator']);
        }

        // XHTML or HTML end tag?
        $endTag = ' />';
        if (($this->view instanceof Zend_View_Abstract) && !$this->view->doctype()->isXhtml()) {
            $endTag = '>';
        }

        if (array_key_exists('class', $attribs)) {
            $class = ' class="' . $attribs['class'] . '"';
        } else {
            $class = '';
        }

        $datetime = $this->view->escape($value);
        //echo $datetime;
        if (preg_match('/[0-9]{4}\-[0-9]{2}\-[0-9]{2} [0-9]{2}:[0-9]{2}:[0-9]{2}/', $datetime)) {
            list($year, $month, $day, $hour, $minutes, $seconds) = preg_split('/[\-\ \:]/', $datetime);
            if ($year < 2000)
                $year = '0000';
            if ($month < 1 || $month > 12)
                $month = '00';
            if ($hour < 0 || $hour > 23)
                $hour = '00';
            if ($minutes < 0 || $minutes > 59)
                $minutes = '00';
            if ($seconds < 0 || $seconds > 59)
                $seconds = '00';
        } else if (array_key_exists('today', $attribs)) {
            $today = getdate();
            //print("$today[year]年$today[mon]月$today[mday]日<br>\n");
            $year = $today['year'];
            $month = $today['mon'];
            $day = $today['mday'];
            $hour = $today['hours'];
            $minutes = $today['minutes'];
            $seconds = $today['seconds'];
        } else {
            $year = '';
            $month = '';
            $day = '';
            $hour = '';
            $minutes = '';
            $seconds = '';
        }
        $attribs['class'] = "$class datetime";

        $xhtml = $separator['before'] . '<input type="text"'
                . ' name="' . $this->getHtmlAttribsName($this->view->escape($name), '_year') . '"'
                . ' id="' . $this->view->escape($id) . '_year"'
                . ' value="' . substr($year, 0, $codeLength['year']) . '"'
                . ' size="' . $codeLength['year'] . '"'
                . ' maxlength="' . $codeLength['year'] . '"'
                . $disabled
                . $this->_htmlAttribs($attribs)
                . $endTag . $separator['year'];

        // Print the field for Operator code
        $attribs['class'] = "$class datetime_operator";

        $xhtml .= '<input type="text"'
                . ' name="' . $this->getHtmlAttribsName($this->view->escape($name), '_month') . '"'
                . ' id="' . $this->view->escape($id) . '_month"'
                . ' value="' . substr($month, 0, $codeLength['month']) . '"'
                . ' size="' . $codeLength['month'] . '"'
                . ' maxlength="' . $codeLength['month'] . '"'
                . $disabled
                . $this->_htmlAttribs($attribs)
                . $endTag . $separator['month'];

        $attribs['class'] = "$class datetime";

        $xhtml .= '<input type="text"'
                . ' name="' . $this->getHtmlAttribsName($this->view->escape($name), '_day') . '"'
                . ' id="' . $this->view->escape($id) . '_day"'
                . ' value="' . substr($day, 0, $codeLength['day']) . '"'
                . ' size="' . $codeLength['day'] . '"'
                . ' maxlength="' . $codeLength['day'] . '"'
                . $disabled
                . $this->_htmlAttribs($attribs)
                . $endTag . $separator['day'];

        $attribs['class'] = "$class datetime";

        $xhtml .= '<input type="text"'
                . ' name="' . $this->getHtmlAttribsName($this->view->escape($name), '_hour') . '"'
                . ' id="' . $this->view->escape($id) . '_hour"'
                . ' value="' . substr($hour, 0, $codeLength['hour']) . '"'
                . ' size="' . $codeLength['hour'] . '"'
                . ' maxlength="' . $codeLength['hour'] . '"'
                . $disabled
                . $this->_htmlAttribs($attribs)
                . $endTag . $separator['hour'];

        $attribs['class'] = "$class datetime";

        $xhtml .= '<input type="text"'
                . ' name="' . $this->getHtmlAttribsName($this->view->escape($name), '_minutes') . '"'
                . ' id="' . $this->view->escape($id) . '_minutes"'
                . ' value="' . substr($minutes, 0, $codeLength['minutes']) . '"'
                . ' size="' . $codeLength['minutes'] . '"'
                . ' maxlength="' . $codeLength['minutes'] . '"'
                . $disabled
                . $this->_htmlAttribs($attribs)
                . $endTag . $separator['minutes'];

        $xhtml .= $separator['after'];
        return $xhtml;
    }

    private function getHtmlAttribsName($name, $key) {
        if (preg_match('/\]$/', $name)) {
            return preg_replace('/\]$/', $key . ']', $name);
        } else {
            return $name . $key;
        }
    }

}

Thu Nov 3 2011 12:03:24 | Zend Framework | No Comments »

Cf Shopping Cart

» Cf Shopping Cart page is here! icon_idea.gif

Cf Shopping Cart is simple shopping cart plugin for WordPress.
This plugin be working with Custom Field and more plugins.
Thereby website can have flexible design.
Can manage stock. Can use select to option different types of products, these can have extra charge or discount.
Can set shipping. Support PayPal payment.


Ads:

Thu Sep 1 2011 11:39:52 | Cf Shopping Cart | 16 Comments »

My Category Order plugin

http://wordpress.org/extend/plugins/my-category-order/

カテゴリーの並び順を変更できる使いやすいすばらしいプラグインです。
このプラグインはワードプレスのデーターベースのテープルにフィールドを追加して動作します。

このプラグインによって並べ替えたカテゴリーを自力でループしてみます。
今回は親と子の階層は1段階のみです。
function.php に追加して使用してみます。

function my_category_order_loop($args) {
    global $wpdb;

    $parent_category = $args['id'];
    $data = $wpdb->get_results($wpdb->prepare("SELECT * FROM $wpdb->term_taxonomy, $wpdb->terms WHERE parent = %d and wp_terms.term_id = wp_term_taxonomy.term_id order by term_order;", $parent_category), ARRAY_A);
    //print_r($data);
    if ($wpdb->last_error) {
        print "<p>" . $wpdb->last_error . "</p>";
    }

    // my category loop
    foreach ($data as $index => $record) {
        $r[] = '<a ' . $class . ' href="' . get_category_link($record['term_taxonomy_id']) . '">' . $record['name'] . '</a>';
    }
    return join(' | ', $r);
}
add_shortcode('my_category_order_loop', 'my_category_order_loop');

Thu Jun 23 2011 17:18:11 | Wordpress | No Comments »

ギャラリー表示作成, make photo gallery

↓こういう画像表示をつくってみる。覚書。
↓情報をテーブル表示、上に大きな画像、下にサムネイル、サムネイルをクリックすると大きく表示。

Name Test Name
Date 2011-06-03
Others hogehoge
DSCF0002

DSCF0002 DSCF0007 DSCF0010


Custom Field Template と Exec-PHP プラグインをインストールしアクティブにする。
下記のテンプレート設定をする。

[Name]
type = text
size = 35
[Date]
type = text
size = 35
[Others]
type = text
size = 35
[img1]
type = file
[img2]
type = file
[img3]
type = file

テーマの footer.php に下記の Javascript を追加

<script type="text/javascript">
//<![CDATA[
jQuery(document).ready(function() {
  //alert('a');
  jQuery('span.thumb').click(function () {
    var href = jQuery(this).attr("href");
    //alert(href);
    jQuery('.large_img > img').attr("src", href);
    return false;
  });
});
//]]>
</script>


テーマの function.php に下記のコードを追加
ショートコードにすると使いやすいかも。

function img_cf() {
    global $post;
    $html = '';

    $la = array('Name', 'Date', 'Others');
    $tl = '<table>';
    foreach ($la as $i => $s) {
        $m = get_post_meta($post->ID, $s,true);
        $tl .= "<tr><td>$s</td><td>$m</td></tr>";
    }
    $tl .= '</table>';

    $be = array();
    $first = '';
    for ($i = 1; $i <= 8; $i++) {
        $cfkey = 'img' . $i;
        $m = get_post_meta($post->ID,$cfkey,true);
        if ($m) {
            $be[] = '<span class="thumb" href="' . wp_get_attachment_url($m,'medium') . '">' . wp_get_attachment_image($m,'thumbnail') . '</a>';
            if (!$first) {
                $first = '<div class="large_img">' . wp_get_attachment_image($m,'medium') . '</div><br />';
            }
        }
    }

    if ($be) {
        $img .= '<div class="be_block">' . join(' ', $be) . '</div>';
    }

    return $tl . $first . $img;
}


下記のコードを投稿に埋め込む
<?php echo img_cf(); ?>
css で位置を固定して、
完了
いろいろ応用できそう。

Eventually, this function has been become plugin.
Cf Image Gallery plugin: http://wordpress.org/extend/plugins/cf-image-gallery/

結局、プラグインにした。



Fri Jun 3 2011 12:05:36 | Wordpress | No Comments »

Ec3popupinfo plugin for WordPress

Description

Ec3popupinfo is a plugin that is popup day information on mouse over the event-calendar plugin widget.

Installation

1. Install and Settings event-calendar plugin. http://wordpress.org/extend/plugins/event-calendar/
2. Install and activate the plugin.
3. Visit Settings Ec3popupinfo.
4. Input data, and save.

Screen shot

概要

Ec3popupinfo プラグインはイベントカレンダープラグイン上に祝祭日や暦などをポップアップ表示するものです。

右サイドバーのイベントカレンダーがデモになっています。(祝祭日と六曜表示)

Download from WordPress.org

Ec3popupinfo

Tue Jan 11 2011 10:50:33 | Ec3popupinfo | No Comments »

Feeeeed plugin update to 0.9.0

Translation for German has been newly created by Rian Kremer. VCA Cursus
Thank you! :-)

ドイツ語に翻訳されました。ありがとう御座います。

Feeeeed plugin

Fri Jun 11 2010 10:29:04 | feeeeed | No Comments »

Feeeeed plugin update to 0.8

Translation for Dutch has been newly created by Rene.
Thank you! :-)

オランダ語に翻訳されました。ありがとう御座います。

Feeeeed plugin

Tue Jun 8 2010 13:14:11 | feeeeed | No Comments »