megumi/wp-yahoo-feed

1.1.3 2015-07-18 14:17 UTC

This package is not auto-updated.

Last update: 2024-12-21 19:31:47 UTC


README

Build Status Latest Stable Version Total Downloads Latest Unstable Version License

Helper class Generates the custom feed for Yahoo Japan for WordPress plugin.

  • Cut the title in 28 chars.
  • Replace the guid from uri to ID.
  • Filter the HTML of <description /> that is allowed by Yahoo.
  • Set post-thumbnail to <enclosure /> and add it to <item />.
  • Add caption attribute to <img /> in <description />;
  • Set post modified date to <pubDate />.
  • Add metabox for Yahoo's categories and set it to <category />.
  • Add trashed items to the feed.

Installation

Create a composer.json in your plugin root or mu-plugins

{
    "require": {
        "megumi/wp-yahoo-feed": "*"
    }
}

Place the following code into your plugin.

require_once dirname( __FILE__ ) . '/vendor/autoload.php';

Then:

$ composer install

How to use

require_once dirname( __FILE__ ) . '/vendor/autoload.php';

$yahoo_feed = new Megumi\WP\Yahoo_Feed( 'my-feed' );
$yahoo_feed->set_categories( array(
    '0' => 'Empty Category',
    '1' => 'Life Style'
) );
$yahoo_feed->register();

Then access to:

http://example.com/feed/my-feed or http://example.com/feed/?type=my-feed

Customization

Filter Hooks

  • yahoo_feed_template_{$feed_name} - Filters the feed template.
  • yahoo_feed_item_title_width_{$feed_name} - Filters the width of item's title.
  • yahoo_feed_item_category_{$feed_name} - Filters the category of the item.
  • yahoo_feed_item_enclosure_image_size_{$feed_name} - Filters the image size of post-thumbnail.
  • yahoo_feed_item_default_enclosure_{$feed_name} - Filters the default post-thumbnail.
  • yahoo_feed_item_excerpt_{$feed_name} - Filters the descrption of the item.
  • yahoo_feed_item_allowed_html_{$feed_name} - Filters the allowed html.

Action Hooks

  • yahoo_feed_item_{$feed_name} - Fires at item node in the feed.

Contributing

Clone this project.

$ git clone git@github.com:megumi-wp-composer/wp-yahoo-feed.git

Run testing

Initialize the testing environment locally:

(you'll need to already have mysql, svn and wget available)

$ bash bin/install-wp-tests.sh wordpress_test root '' localhost latest

Install phpunit.

$ composer install

The unit test files are in the tests/ directory.

To run the unit tests, just execute:

$ phpunit

Issue

https://github.com/megumi-wp-composer/wp-yahoo-feed/issues