Changeset 2579450
- Timestamp:
- 08/06/2021 04:51:54 PM (5 years ago)
- Location:
- slick-engagement
- Files:
-
- 6 edited
-
assets/screenshot-1.png (modified) (previous)
-
assets/screenshot-2.png (modified) (previous)
-
assets/screenshot-3.png (modified) (previous)
-
trunk/SlickEngagement_Plugin.php (modified) (7 diffs)
-
trunk/readme.txt (modified) (3 diffs)
-
trunk/slick-engagement.php (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
slick-engagement/trunk/SlickEngagement_Plugin.php
r2541449 r2579450 131 131 // http://plugin.michael-simpson.com/?page_id=41 132 132 133 // Ensure pages can be configured with categories and tags133 // Ensure pages can be configured with categories and tags 134 134 add_action('init', array(&$this, 'add_taxonomies_to_pages')); 135 135 … … 149 149 add_action('thesis_hook_after_header', array(&$this, 'np_slickstream_space_genesis'), $reserveFilmstripPriority); 150 150 add_action('kadence_after_header', array(&$this, 'np_slickstream_space_genesis'), $reserveFilmstripPriority); 151 add_action('astra_header_after', array(&$this, 'np_slickstream_space_genesis'), $reserveFilmstripPriority); 151 152 } else if ($reserveFilmstripSpace === BEFORE_CONTENT_GENESIS_TLA || $reserveFilmstripSpace === BEFORE_CONTENT_GENESIS) { 152 153 // $this->guildLog('Adding before-content filmstrip injection'); … … 156 157 add_action('thesis_hook_before_content', array(&$this, 'np_slickstream_space_genesis'), $reserveFilmstripPriority); 157 158 add_action('kadence_before_content', array(&$this, 'np_slickstream_space_genesis'), $reserveFilmstripPriority); 159 add_action('astra_content_before', array(&$this, 'np_slickstream_space_genesis'), $reserveFilmstripPriority); 158 160 } else if ($reserveFilmstripSpace === CUSTOM && !empty($reserveFilmstripCustom)) { 159 161 add_action($reserveFilmstripCustom, array(&$this, 'np_slickstream_space_genesis'), $reserveFilmstripPriority); 160 162 } 163 164 add_filter('rocket_delay_js_exclusions', array(&$this, 'np_wp_rocket__exclude_from_delay_js')); 165 } 166 167 // Exclude scripts from JS delay. 168 public function np_wp_rocket__exclude_from_delay_js($excluded_strings = array()) 169 { 170 // MUST ESCAPE PERIODS AND PARENTHESES! 171 $excluded_strings[] = "slickstream"; 172 return $excluded_strings; 161 173 } 162 174 … … 330 342 global $post; 331 343 echo "\n"; 332 echo '<meta property="slick:wpversion" content="1.1.1 7" />' . "\n";344 echo '<meta property="slick:wpversion" content="1.1.18" />' . "\n"; 333 345 $siteCode = trim($this->getOption('SiteCode')); 334 346 if ($siteCode) { … … 387 399 $ldJsonPlugin = (object) [ 388 400 '@type' => 'Plugin', 389 'version' => ' 1.1.17',401 'version' => '8', 390 402 ]; 391 403 array_push($ldJsonElements, $ldJsonPlugin); … … 536 548 } 537 549 550 $ldJsonTaxonomies = array(); 538 551 $taxonomies = get_object_taxonomies($post, 'objects'); 539 552 if (!empty($taxonomies)) { 540 $ldJsonTaxonomies = array();541 553 foreach ($taxonomies as $taxonomy) { 542 if ( !$taxonomy->_builtin&& $taxonomy->public) {554 if (empty($taxonomy->_builtin) && $taxonomy->public) { 543 555 $taxTerms = array(); 544 556 $terms = get_the_terms($post, $taxonomy->name); … … 562 574 } 563 575 } 564 $ldJsonPost->taxonomies = $ldJsonTaxonomies; 565 } 576 } 577 if (class_exists('WPRM_Recipe_Manager')) { 578 // $postTypeArgs = array('public' => true, '_builtin' => false); 579 // $ldJsonPost->postTypes = get_post_types($postTypeArgs, 'names', 'and'); 580 $recipes = WPRM_Recipe_Manager::get_recipe_ids_from_post($post->ID); 581 // $ldJsonPost->recipes = $recipes; 582 if (!empty($recipes)) { 583 // $recipe = WPRM_Recipe_Manager::get_recipe($recipes[0]); 584 // $ldJsonPost->recipe = $recipe; 585 // $ldJsonPost->recipeId = $recipes[0]; 586 $recipeTaxonomies = get_object_taxonomies('wprm_recipe', 'objects'); 587 // $ldJsonPost->recipeTaxonomies = $recipeTaxonomies; 588 if (!empty($recipeTaxonomies)) { 589 foreach ($recipeTaxonomies as $taxonomy) { 590 if (empty($taxonomy->_builtin) && $taxonomy->public) { 591 $taxTerms = array(); 592 $terms = get_the_terms($recipes[0], $taxonomy->name); 593 // $lsJsonPost->taxTerms = $terms; 594 if (!empty($terms)) { 595 foreach ($terms as $term) { 596 $termObject = (object) [ 597 '@id' => $term->term_id, 598 'name' => $term->name, 599 'slug' => $term->slug, 600 ]; 601 array_push($taxTerms, $termObject); 602 } 603 $ldJsonTaxElement = (object) [ 604 'name' => $taxonomy->name, 605 'label' => $taxonomy->label, 606 'description' => $taxonomy->description, 607 'terms' => $taxTerms, 608 ]; 609 array_push($ldJsonTaxonomies, $ldJsonTaxElement); 610 } 611 } 612 } 613 } 614 } 615 } 616 $ldJsonPost->taxonomies = $ldJsonTaxonomies; 566 617 } 567 618 array_push($ldJsonElements, $ldJsonPost); -
slick-engagement/trunk/readme.txt
r2541449 r2579450 2 2 Contributors: kduffie 3 3 Donate link: https://slickstream.com 4 Tags: search, favorites, recommendations, navigation, engagement, widgets, filmstrip, carousel4 Tags: search,recommendations,favorites,navigation,engagement,better search,advanced search,category search,relevant search,carousel,bookmarks,stories 5 5 License: GPLv2 or later 6 6 License URI: http://www.gnu.org/licenses/gpl-2.0.html 7 Requires at least: 4.0 7 Requires at least: 5.0 8 Requires PHP: 5.6 8 9 Tested up to: 5.7.2 9 Stable tag: 1.1.1 710 11 Increase pageviews and delight visitors with fast and responsive site search, beautiful content discovery tools and more. 10 Stable tag: 1.1.18 11 12 Slickstream makes it easy to upgrade your site search. Get beautiful as-you-type search, relevant content recommendations, user favorites and more! 12 13 13 14 == Description == 14 15 15 Slickstream is a startup with a simple mission: To help publishers create exceptional user experiences and maximize their visitor engagement. 16 17 This plugin is for users of the [Slickstream Engagement Suite](https://www.slickstream.com/engagement-suite) — it adds our embed code to your pages and registers tools that you can place anywhere on your pages. These tools provide visitors with a simple interactive way to see all of the content available on your site in a highly engaging way. We use contextual information to maximize the likelihood that a visitor will see another page that will interest them. 18 19 You have several tools and options to choose from, including Responsive Search, Filmstrips, User Favorites and Games. For more information, or to sign up for our 30-day free trial, visit us at [slickstream.com](https://slickstream.com). 16 At Slickstream, we believe that giving website visitors a great experience is the best way to steadily build traffic volume over time. That's why we make it easy for publishers to add world-class search and engagement tools without a complicated technical integration or lengthy onboarding. 17 18 This plugin is for users of the [Slickstream Engagement Suite](https://bloggers.slickstream.com) and [Slickstream for Business](https://business.slickstream.com/). It adds our embed code to your pages and registers tools that you can place anywhere on your pages. Subscriptions start at $10/mo, and we offer a [completely free 30-day trial](https://bloggers.slickstream.com/get-slick) that doesn’t even require a credit card. 19 20 Slickstream users get unlimited access to all of our tools, including: 21 - Responsive *as-you-type search* with a heap of advanced features that your visitors will love 22 - Customizable *recommendation carousels and grids* backed by real data 23 - Hassle-free *content favoriting* to keep your visitors coming back 24 - A robust *analytics portal* with engagement insights you can actually use 25 26 ## The Slickstream Difference 27 28 What makes Slickstream different is that we handle the hard work for you. We sit outside of WordPress, which means when you sign up we build a model of your site and use it to populate all of our search and recommendation tools. Then you pick the ones you want to use, flip a switch, and we’re live! Your site can be running Slickstream tomorrow, with no complicated technical implementation required. 29 30 ## What's Included 31 32 - Floating Search: Search with Slickstream on any page 33 - Hooked Search Buttons: Automatically link your existing search to Slickstream 34 - Inline Search Module: As-you-type search results displaying on page 35 - Infinite Filmstrip: Content recommendations placed above posts 36 - Filmstrip Toolbar: Sticky recommendations that display on scroll 37 - Content Grid: Flexible recommendation module that can be placed anywhere 38 - Floating Favorites: Interactive content bookmarking with no sign-in required 39 - Floating Back-to-Top: Simple option to return to top of content 40 - Web Story Player: Full site integrations for existing web stories 41 - Interactive Games: Automatically generated minigames featuring recommendations 42 - Campaigns: Incorporate custom objectives into user experience (business only) 43 - Analytics Portal: Robust insights into both Slickstream statistics and general 44 45 ## General Features and Integrations: 46 47 - Supports all major themes and editors 48 - Search or recommend content across multiple domains 49 - Multi-language search results supported 50 - Configurable GDPR settings 51 - Designed for accessibility compliance 52 - Client-side API available 53 - Email provider integrations (MailChimp, ConvertKit, ActiveCampaign) 54 - First-party data integration with advertising networks 55 - Google Analytics integration 56 - Recipe card integrations (WP Recipe Maker, Tasty Recipes) 57 - E-commerce integration (Shopify) 58 59 ## Configuration Options: 60 61 - Pre-made templates to choose from 62 - Granular look and feel controls 63 - Custom messaging on all text prompts 64 - Attribution removal (additional charge) 65 - Built-in CLS (Cumulative Layout Shift) handling 66 - Optional opt-in email collection 67 - Optional advertising slot inclusions 68 69 ## Search and Recommendation Details: 70 71 - Search by category, content type, or author 72 - Default sort by relevance, date, or popularity 73 - Custom result weighting in search and recommendations 74 - Manual categorization and content grouping control 75 - Exclude results by category, content type, or individual posts 76 - Custom taxonomies supported 77 - Progressively detailed results including metadata 78 - Automatic content grouping in results 79 - Fuzzy matching and typo forgiveness 80 - Highlighted search terms in results 81 - Structured data search experience for ingredients or supplies 82 - All search queries recorded in analytics 83 84 == FAQ == 85 86 = What’s Included With the 30-Day Free Trial? = 87 Everything! When you sign up for our free 30-day trial, we set your website up with the tools you want, at zero cost to you — we won’t even ask for your credit card information up front. If for any reason you don’t like it, you can cancel at any point during your 30-day trial without paying a dime. 88 89 If you decide to subscribe, you will need to provide a credit card at that point. You will not be charged for any previous usage — instead, starting one month later, you will be charged based on actual traffic volume during that month. 90 91 = Do You Support Languages Other Than English? = 92 Yes we do. Our underlying recommendation technology is not English-specific, and we have already localized the Engagement Suite for German, Portuguese, Spanish, Dutch, French, Norwegian, Swedish, Croatian, Russian, Danish, Arabic, Hebrew, Japanese and more. [Reach out to us](https://www.slickstream.com/contact) and we can confirm if we support your language too. 93 94 = How Long Will Slickstream Take to Set Up? = 95 Your site can be running Slickstream tomorrow, without any complicated technical implementation. Once you've been approved for a trial, we’ll get your site ready to go within hours. 96 97 = How Do I Get Started? = 98 It’s simple: [sign up for your free trial here](https://bloggers.slickstream.com/get-slick), and we’ll send you a pre-configured demo page. Then just install the plugin, review and adjust your settings, and go live! 20 99 21 100 == Installation == … … 28 107 == Screenshots == 29 108 30 1. A Slickstream filmstrip for recommendations31 2. Slickstream favorites (hearts)32 3. Slickstream as-you-type search109 1. Slickstream Search in action, filtered by "sauce" and displaying results for "chipotle" along with appropriate metadata. 110 2. The on-page experience for Slickstream users. On display are Favorites/Bookmarks, Floating Search, Back-To-Top and the Filmstrip Toolbar. 111 3. Automatic categorization within the Slickstream panel. Here you can see results for "dessert" grouped by popularity, date, and a related subcategory ("baking"). 33 112 34 113 == Changelog == … … 140 219 - Remove extraneous logging 141 220 - Add support for custom injection hook 221 222 = 1.1.18 223 - Add widgets and shortcodes for inline-search widget 224 - Initial support for Gutenberg blocks -
slick-engagement/trunk/slick-engagement.php
r2541449 r2579450 3 3 Plugin Name: Slickstream Search and Engagement 4 4 Plugin URI: https://slickstream.com/getting-started 5 Version: 1.1.1 75 Version: 1.1.18 6 6 Author: Slickstream 7 7 Author URI: https://slickstream.com
Note: See TracChangeset
for help on using the changeset viewer.