=== Plugin Name === Contributors: stringfold Tags: index, indexing, alphabet, alphabetical, organize, atoz, posts Requires at least: 2.5 Tested up to: 2.5.1 Stable tag: 0.2 Create alphabetical indexes of your posts, with headings, subheadings, and descriptions, based on post title, extract, author name or custom fields. == Description == Enhance your blog by creating multiple, three-level alphabetical indexes of your posts based on any combination of post title, author, extract, or custom fields of your choice. Select which posts are included in your indexes using a combination of categories and tags, display them in up to four columns on a single page or over multiple pages. For example, the AZIndex plugin can be used to: * create an alphabetical index of all your blog posts, based on their titles, using extracts as short descriptions. * create a music review index, sorted by the name of the artist and the name of their albums. * on blogs with multiple authors, create an index of posts by each author's name. Full list of features: * Index posts by title, extract, author, or any custom field * Select index contents using a combination of categories and tags. * One, two or three-level entries - heading, subheading, and description, all customizable. * Up to four columns on a page. * Multiple indexes can be created, each customized with its own settings. * *NEW:* Indexes may be embedded in posts as well as pages. * Fully customizable from the WordPress admin console. No need to know HTML or CSS. * Single or multi-page indexes. * Optional links to each letter and page in the index. * Group items with the same heading under one entry (e.g. all the novels of the same author). * Add your own text to the index pages. * Control the number of items per page. * Customize the stylesheets for the index contents directly from the index administration page. **IMPORTANT NOTE:** This is a **BETA** release, meaning that while the plugin is stable and has undergone considerable testing, there may be a bug or two. I have not been able to test all the plugin's features on all combinations of WordPress versions and browsers. Please read the Other Notes section before installing. If you try this plugin and like what you see, please provide feedback by either adding a comment below or sending an email to mike@englishmike.net. No matter if you're reporting a bug or requesting a new feature, I will be happy to hear from you. == Installation == Installation Instructions: 1. Download the plugin zip file. 1. Upload the plugin contents into your WordPress installation's plugin directory. 1. The plugin's .php files and readme.txt should be installed in the 'wp-content/plugins/azindex/' directory. 1. From the Plugin Management page, activate the AZIndex plugin. Getting Started: 1. To create a new index, go to Manage >> AZIndexes and click on the 'Add New' link. 1. Enter a title for your index and select the options you want. 1. Click the 'Add Index' button and a new index, along with a new unpublished blog page, will be created. 1. To view the contents of your new index page, go to Manage >> Pages and preview the page from there. 1. Make sure you try out all the options. They can be used to tailor the look and feel of the index to your satisfaction. 1. Once you are happy with the results, publish the index page (from Manage >> Pages) so your users can access it. 1. Hint: Consider using custom fields in your posts to set the headings and sub-headings of your index. For example, if you are indexing book reviews you have posted, you can create an index that uses custom fields to access the authors' names as headings, and the book titles as sub-headings. That way you can have a well organized index without having to mess with the titles of your reviews. == Frequently Asked Questions == = How can I include all my posts in the index? = Easy, just leave the 'Included tags' and 'Included categories' fields empty. = How do I add my index to another page or post? = 1. Make a note of the ID of the index from the table on the Manage >> AZIndexes administration page. 1. Edit the page/post in which you want to display the index. 1. Insert the following "short-code" into your page/post: [az-index id="x"] (where x is the ID of the index). = Can I index pages as well as posts? = No, not at this time. Please let me know if this is an important feature for you. = When I have more than one column on a page, why are the columns sometimes different lengths? = That is because the index items are split evenly between the columns, but some items can take up more column space than others. If there are several large items in one of the columns, it may end up being much longer than the others. = You say that this is a BETA release, what exact does that mean? = It means that this is the first time the plugin has been released to the outside world. While I have tested many of the features as thoroughly as possible, I am not able to test all the features of the plugin with all the browsers on all versions of WordPress, PHP and MySQL. So it is possible you will come across a combination where there is still a one or two bugs. It also means that there are one or two features left to be finished, like caching and internationalization. Finally, you may have to delete and recreate your indexes when you decide to move up to a new version. However, you should be able to use this version of the plugin without any trouble. Just make sure to test it out before you publish your index page. Any feedback you can provide me is most welcome. = Why shouldn't I use the BETA version of AZIndex to generate large indexes on high-traffic blogs? = Because every time the index page is accessed by a user, the entire index is generated from scratch. If you create a large index that may be accessed by many users, the load on your server may be too high, especially if you are running on a shared host. If you still want to play with a large index, the safe way to do it is to leave the index page unpublished. That way, only you can access it. = I still have more questions/problems/requests, where do I go for answers? = Simple, either leave a comment at the [AZIndex Plugin Home Page](http://englishmike.net/azindex-plugin/), or send me an email at mike@englishmike.net. == Release Notes == **New features in version 0.2** * Indexes are no longer tied to a specific blog page. For you convenience, a new page containing the '[az-index id="x"]' short-code will be created when you add an index, but you can copy that shortcode to any post or page you like. * Posts can now have indexes embedded within them. Just insert the short-code '[az-index id="x"]' where x is the id of the index. e.g. [az-index id="1"]. * You can embed the same short-code in more than one post/page. **Upgrading from version 0.1** * Delete all the indexes created with version 0.1. They will no longer work correctly. The quickest way to do this is to click 'Uninstall' and uninstall the plugin before you upgrade. * You can no longer preview the index page from the 'Manage Indexes' table. Go to Manage >> Pages instead. * The plugin's administration page has been renamed from 'Index Pages' to 'AZIndexes' **Minimum versions tested** * WordPress v2.5 (not tested on prior versions of WordPress, but may work on recent versions like 2.3) * PHP 5 (should work with PHP 4.3 onwards but it is, as yet, untested. Note: If any PHP 5-only APIs are found in the plugin code, I will remove them, if possible). * MYSQL 5.0. **Known issues** * **IMPORTANT:** No caching is employed in this version, the entire index is generated from the database every time an index page is loaded (even when the index is spread over multiple pages). If you create a large index with hundreds of items, it could be a serious drain on your server's CPU resources. Do not use this beta version of the plugin for very large indexes if you have a popular blog. Your web host might get a little upset with you if you do! Note: You can still safely test the plugin with a large index by not publishing the index page. That way only you and other administrators will be able to access it. * This plugin is English-only and does not use the internationalization APIs as yet. * No account is taken of quotes or any other special characters at the start of the headings. For example, the heading "Nowhere Man" (including the quotes) will be placed under ", not N. * The plugin still contains some debug code. It will not affect the behavior or performance of the plugin. It will be removed in later versions. * The wp_nonce functions have yet to be implemented. **Known bugs** * If you specify more than one category or tag for an index, you will get duplicate entries appearing in your index. The only workaround is to use, at most, one tag and one category at a time. (You can specify one of each.) * Selecting the author will display the author's id (number) and not their name. * In the Safari browser, the text input fields do not appear when you select "Custom field" when adding or editing an index's settings. The workaround is to select "Custom field" then save the settings. When you edit the index's settings again, the text input field will be visible. * Index entries with no heading show up at the top of the index and will be visible if the entry contains a subheading or description. Workarounds: add a heading to the post or remove the subheading and/or description, or remove the entry from the index altogether.