{"id":19626,"date":"2012-08-24T19:21:12","date_gmt":"2012-08-24T19:21:12","guid":{"rendered":"https:\/\/wordpress.org\/plugins-wp\/tecnosenior-faq-manager\/"},"modified":"2012-08-27T19:25:45","modified_gmt":"2012-08-27T19:25:45","slug":"tecnosenior-faq-manager","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/tecnosenior-faq-manager\/","author":10084766,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0","stable_tag":"trunk","tested":"3.4.2","requires":"3.3","requires_php":"","requires_plugins":"","header_name":"Tecnosenior FAQ Manager","header_author":"Pedro Kiefer","header_description":"","assets_banners_color":"","last_updated":"2012-08-27 19:25:45","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"http:\/\/www.tecnosenior.com","header_author_uri":"http:\/\/www.pedro.kiefer.com.br","rating":0,"author_block_rating":0,"active_installs":0,"downloads":1428,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":[],"upgrade_notice":{"":"<p>None.<\/p>"},"ratings":{"1":0,"2":0,"3":0,"4":0,"5":0},"assets_icons":[],"assets_banners":[],"assets_blueprints":{},"all_blocks":[],"tagged_versions":[],"block_files":[],"assets_screenshots":[],"screenshots":[]},"plugin_section":[],"plugin_tags":[221,60376,1643,15036,60377],"plugin_category":[43,59],"plugin_contributors":[129778],"plugin_business_model":[],"class_list":["post-19626","plugin","type-plugin","status-publish","hentry","plugin_tags-ajax","plugin_tags-ask-questions","plugin_tags-faq","plugin_tags-faq-manager","plugin_tags-search-questions","plugin_category-customization","plugin_category-utilities-and-tools","plugin_contributors-pedrokiefer","plugin_committers-pedrokiefer"],"banners":[],"icons":{"svg":false,"icon":"https:\/\/s.w.org\/plugins\/geopattern-icon\/tecnosenior-faq-manager.svg","icon_2x":false,"generated":true},"screenshots":[],"raw_content":"<!--section=description-->\n<p><em>Features<\/em>:<\/p>\n\n<ul>\n<li>MVC Based Plugin<\/li>\n<li>AJAX Based Administration Interfaces<\/li>\n<li>Skins for shortcode tag: you can create your own skin!<\/li>\n<li>Full text search, using mysql FULLTEXT support<\/li>\n<li>Email notifications<\/li>\n<li>Easily Translatable<\/li>\n<li>I18N: English and Brazilian Portuguese<\/li>\n<\/ul>\n\n<p>Development happens on <a href=\"https:\/\/github.com\/pedrokiefer\/tsc-faq-manager\">github<\/a><\/p>\n\n<h3>Customizations<\/h3>\n\n<h3>Skins<\/h3>\n\n<p>To create a skin, just add a new directory under skins with your new skin. Inside the directory there should be a PHP\nfile with a custom header and two functions. Those functions are called by the shortcode renderer, don't change the name of\nthe functions!<\/p>\n\n<h3>Skin Header<\/h3>\n\n<p>The file header is composed of the following fields, just like any Wordpress theme or plugin - inside a multi line comment on \nthe first 8kb of the file.<\/p>\n\n<ul>\n<li>Skin Name<\/li>\n<li>Description<\/li>\n<li>Version<\/li>\n<li>Author<\/li>\n<li>Author URI<\/li>\n<\/ul>\n\n<h3>Functions<\/h3>\n\n<p>The following functions should be on your skin file:<\/p>\n\n<pre><code>function tsc_skin_get_headers()\nfunction tsc_skin_render($group, $questions)\n<\/code><\/pre>\n\n<p>The first function is responsible for adding to the headers any needed javascript or css. It must return an array with the keys <code>js<\/code> and <code>css<\/code>. The code below include jquery, jquery-ui and a custom javascript file. It also include the needed css file.<\/p>\n\n<pre><code>function tsc_skin_get_headers()\n{\n    $headers = array(\n        \"js\" =&gt; array(\n            \"jquery\",\n            \"jquery-ui\",\n            array(\"name\" =&gt; \"tecnosenior-faq\", \"file\" =&gt; plugin_dir_url(__FILE__) . \"\/tecnosenior-faq.js\")\n            ),\n        \"css\" =&gt; array(\"tecnosenior-faq\" =&gt; plugin_dir_url(__FILE__) . \"\/tecnosenior-faq.css\")\n        );\n\n    return $headers;\n}   \n<\/code><\/pre>\n\n<p>The second function receive two objects containing the data that should be rendered. It must return a string.<\/p>\n\n<h3>Group<\/h3>\n\n<p>A single group object with this fields:\n- Id\n- GroupName\n- SearchBox\n- AskBox\n- Status\n- CreationDate<\/p>\n\n<h3>Questions<\/h3>\n\n<p>An array of question objects with this fields available:\n- Id\n- GroupId\n- QuestionOrder\n- Question\n- WhoAsked\n- Answer\n- Status\n- Type\n- CreationDate<\/p>\n\n<p>Sample code, for skin renderer:<\/p>\n\n<pre><code>function tsc_skin_render($group, $questions)\n{\n    $html = \"\";\n    if ($group-&gt;SearchBox) {\n        $html .= render_search_box($group-&gt;Id);\n    }\n\n    $i = 0;\n    $html .= \"&lt;div class=\\\"span-14 prepend-1 append-1 last faq-questions\\\" id=\\\"faq-questions-list\\\"&gt;\\n\";\n    foreach ($questions as $q) {\n        $html .= render_question($q, ($i % 2 == 1));\n        $i++;\n    }\n    $html .= \"&lt;\/div&gt;\";\n\n    if ($group-&gt;AskBox) {\n        $html .= render_ask_box($group-&gt;Id);\n    }\n\n    return $html;\n}\n<\/code><\/pre>\n\n<!--section=installation-->\n<ol>\n<li>Upload zip file to <code>wp-content\/plugins<\/code> directory and extract it<\/li>\n<li>Activate the plugin through the 'Plugins' menu in WordPress<\/li>\n<li>Place the shortcode <code>[tscfaq id=?]<\/code> substituting ? for a group id<\/li>\n<li>Customize the shortcode skin<\/li>\n<\/ol>\n\n<!--section=faq-->\n<p>None for the moment.<\/p>\n\n<!--section=changelog-->\n<h4>1.2<\/h4>\n\n<p>First release to wordpress.org<\/p>","raw_excerpt":"A Wordpress FAQ Manager where you can easily manage questions on your site.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/19626","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=19626"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/pedrokiefer"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=19626"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=19626"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=19626"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=19626"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=19626"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=19626"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}