Keywords
Overview
Details about implementing keywords with PHP classes.
PHP libraries
[COMMON_LIB]_classes/db/db_keyword_content_class.php[COMMON_LIB]_classes/keywords/keyword_class.php
Displaying keywords
Displaying keyword lists within listings pages
- LITTLED/JQuery config within
$(document).ready()
$fn.keywords('bindListingsHandlers');- This is not rolled into
$fn.listings('bindListingsHandlers') - Typically, it would be added to a JQuery plugin targeted to a specific CMS content section:
- This is not rolled into
/*
* file: content_type.js
* JQuery added functionality
*/
(function($) {
var methods = {
bindListingsHandlers: function() {
return this.each(function() {
/* listings handlers */
$(this)
.listings('bindListingsHandlers')
.keywords('bindListingsHandlers');
LITTLED.init({setSortables: function() {
$('#listings-container')
.listings('bindListingsButtons')
.keywords('bindListingsButtons');
}});
});
},
/* etc... */
- Outside the listings loop,
- Define an object to use to retrieve and display keyword lists.
- Set the keyword object's content id to the appropriate value for the listings content.
- Within the listings loop,
- Set the id of the keyword object to the current record id.
- Include shared content include to display keyword list.
- Clear keyword values.
$keywords = new db_keyword_content_class($filters->site_section->id->value);
while ($row = mysql_fetch_object($rs)) {
?>
<tr class="rec-row <?=$rowClass?>" id="rr-<?$filters->site_section->id->value?>-<?=$row->id?>" data-rid="<?=$row->id?>">
<td>
<?
$keywords->id->value = $row->id;
include (COMMON_TEMPLATE_DIR."content/keywords/keywords_cell.php");
$keywords->clear_keyword_data();
?>
</td>
</tr>
}
Displaying keyword lists within 'details' pages
- TK
Album keyword filter autocomplete
- AJAX handler:
/_ajax/images/album_title_search.php - Define derived version of
search_titles(). The base routinealbum_filters_class->search_titles()routine won’t work with the table structure.