├── languages ├── pmpro-advanced-levels-shortcode.mo ├── pmpro-advanced-levels-shortcode-es_ES.mo ├── pmpro-advanced-levels-shortcode-fr_FR.mo ├── pmpro-advanced-levels-shortcode-nb_NO.mo ├── pmpro-advanced-levels-shortcode.pot ├── pmpro-advanced-levels-shortcode.po ├── pmpro-advanced-levels-shortcode-es_ES.po ├── pmpro-advanced-levels-shortcode-fr_FR.po └── pmpro-advanced-levels-shortcode-nb_NO.po ├── blocks └── build │ └── advanced-levels-page │ ├── index.asset.php │ ├── render.php │ ├── block.json │ └── index.js ├── .gitignore ├── webpack.config.js ├── templates ├── levels-table.php ├── levels-div.php ├── levels.php └── levels-compare_table.php ├── readme.txt ├── pmpro-advanced-levels-shortcode.php └── css └── pmpro-advanced-levels.css /languages/pmpro-advanced-levels-shortcode.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/strangerstudios/pmpro-advanced-levels-shortcode/HEAD/languages/pmpro-advanced-levels-shortcode.mo -------------------------------------------------------------------------------- /languages/pmpro-advanced-levels-shortcode-es_ES.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/strangerstudios/pmpro-advanced-levels-shortcode/HEAD/languages/pmpro-advanced-levels-shortcode-es_ES.mo -------------------------------------------------------------------------------- /languages/pmpro-advanced-levels-shortcode-fr_FR.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/strangerstudios/pmpro-advanced-levels-shortcode/HEAD/languages/pmpro-advanced-levels-shortcode-fr_FR.mo -------------------------------------------------------------------------------- /languages/pmpro-advanced-levels-shortcode-nb_NO.mo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/strangerstudios/pmpro-advanced-levels-shortcode/HEAD/languages/pmpro-advanced-levels-shortcode-nb_NO.mo -------------------------------------------------------------------------------- /blocks/build/advanced-levels-page/index.asset.php: -------------------------------------------------------------------------------- 1 | array('wp-block-editor', 'wp-blocks', 'wp-components', 'wp-element', 'wp-i18n', 'wp-server-side-render'), 'version' => 'c1caa30dcd39497c2173'); 2 | -------------------------------------------------------------------------------- /blocks/build/advanced-levels-page/render.php: -------------------------------------------------------------------------------- 1 | 7 |
> 8 | 9 |
-------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Windows image file caches 2 | Thumbs.db 3 | ehthumbs.db 4 | 5 | # Folder config file 6 | Desktop.ini 7 | 8 | # Recycle Bin used on file shares 9 | $RECYCLE.BIN/ 10 | 11 | # Mac stuff 12 | .DS_Store 13 | 14 | # Sublime 15 | *.sublime-project 16 | *.sublime-workspace 17 | 18 | # npm 19 | node_modules 20 | package-lock.json 21 | 22 | # composer 23 | vendor 24 | composer.js 25 | composer.lock 26 | 27 | # Temporary files 28 | *~ 29 | -------------------------------------------------------------------------------- /webpack.config.js: -------------------------------------------------------------------------------- 1 | /** 2 | * `@wordpress/scripts` path-based name multi-block Webpack configuration. 3 | * @see https://wordpress.stackexchange.com/questions/390282 4 | */ 5 | 6 | // Native Depedencies. 7 | const path = require("path"); 8 | 9 | // Third-Party Dependencies. 10 | const CopyPlugin = require("copy-webpack-plugin"); 11 | const config = require("@wordpress/scripts/config/webpack.config.js"); 12 | 13 | config.entry = { 14 | "advanced-levels-page/index": path.resolve( 15 | process.cwd(), 16 | "blocks", 17 | "src", 18 | "advanced-levels-page", 19 | "index.js" 20 | ) 21 | }; 22 | config.output = { 23 | filename: "[name].js", 24 | path: path.resolve(process.cwd(), "blocks", "build"), 25 | }; 26 | 27 | // Add a CopyPlugin to copy over block.json files. 28 | config.plugins.push( 29 | new CopyPlugin({ 30 | patterns: [ 31 | { 32 | context: "blocks/src", 33 | from: `*/block.json`, 34 | noErrorOnMissing: true, 35 | }, 36 | { 37 | context: "blocks/src", 38 | from: `*/render.php`, 39 | noErrorOnMissing: true, 40 | }, 41 | ], 42 | }) 43 | ); 44 | 45 | module.exports = config; -------------------------------------------------------------------------------- /blocks/build/advanced-levels-page/block.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://schemas.wp.org/trunk/block.json", 3 | "apiVersion": 3, 4 | "name": "pmpro-advanced-levels/advanced-levels-page", 5 | "title": "PMPro Advanced Levels Page", 6 | "category": "pmpro", 7 | "description": "Inserts a customizable membership level pricing table for Paid Memberships Pro.", 8 | "keywords": [ "level", "price", "pricing table", "paid memberships pro", "pmpro" ], 9 | "attributes": { 10 | "back_link": { 11 | "default": true, 12 | "type": "boolean" 13 | }, 14 | "checkout_button": { 15 | "default": "Select", 16 | "type": "string" 17 | }, 18 | "compare": { 19 | "default": "", 20 | "type": "string" 21 | }, 22 | "css_class": { 23 | "default": "pmpro_btn", 24 | "type": "string" 25 | }, 26 | "description": { 27 | "default": true, 28 | "type": "boolean" 29 | }, 30 | "discount_code": { 31 | "default": "", 32 | "type": "string" 33 | }, 34 | "expiration": { 35 | "default": true, 36 | "type": "boolean" 37 | }, 38 | "highlight": { 39 | "default": [], 40 | "type": "string" 41 | }, 42 | "layout": { 43 | "default": "div", 44 | "type": "string" 45 | }, 46 | "levels": { 47 | "default": [], 48 | "type": "string" 49 | }, 50 | "price": { 51 | "default": "short", 52 | "type": "string" 53 | }, 54 | "renew_button": { 55 | "default": "Renew", 56 | "type": "string" 57 | } 58 | }, 59 | "supports": {}, 60 | "typography": { 61 | "fontSize": true, 62 | "lineHeight": true, 63 | "__experimentalFontFamily": true, 64 | "__experimentalFontWeight": true, 65 | "__experimentalFontStyle": true, 66 | "__experimentalTextTransform": true, 67 | "__experimentalTextDecoration": true, 68 | "__experimentalLetterSpacing": true, 69 | "__experimentalDefaultControls": { 70 | "fontSize": true 71 | } 72 | }, 73 | "reusable": false, 74 | "spacing": { 75 | "margin": true, 76 | "padding": [ 77 | "horizontal", 78 | "vertical" 79 | ], 80 | "__experimentalDefaultControls": { 81 | "padding": true 82 | } 83 | }, 84 | "example": {}, 85 | "textdomain": "pmpro-advanced-levels-page", 86 | "editorScript": "file:./index.js", 87 | "render": "file:./render.php" 88 | } -------------------------------------------------------------------------------- /templates/levels-table.php: -------------------------------------------------------------------------------- 1 | 13 |
14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | id ) { 37 | $element_classes[] = 'pmpro_level-highlight'; 38 | } 39 | if ( $level->current_level ) { 40 | $element_classes[] = 'pmpro_level-current'; 41 | } 42 | $element_class = implode( ' ', array_unique( $element_classes ) ); 43 | ?> 44 | 45 | id, $template); ?> 46 | 54 | 55 | 58 | 59 | 61 | 68 | 69 | 72 | id, $template); ?> 73 | 74 | 77 | 78 |
 
47 |

name, pmproal_allowed_html() ); ?>

48 | description ) ) { ?> 49 |
50 | description) ); ?> 51 |
52 | 53 |
56 | 57 | 62 | 67 | 70 | 71 |
79 |
80 |
81 | -------------------------------------------------------------------------------- /blocks/build/advanced-levels-page/index.js: -------------------------------------------------------------------------------- 1 | (()=>{"use strict";var e={n:l=>{var o=l&&l.__esModule?()=>l.default:()=>l;return e.d(o,{a:o}),o},d:(l,o)=>{for(var a in o)e.o(o,a)&&!e.o(l,a)&&Object.defineProperty(l,a,{enumerable:!0,get:o[a]})},o:(e,l)=>Object.prototype.hasOwnProperty.call(e,l)};const l=window.wp.blocks,o=window.wp.element,a=window.wp.i18n,t=window.wp.blockEditor,r=window.wp.components,n=window.wp.serverSideRender;var c=e.n(n);const d=JSON.parse('{"UU":"pmpro-advanced-levels/advanced-levels-page"}');(0,l.registerBlockType)(d.UU,{icon:{background:"#FFFFFF",foreground:"#658B24",src:"list-view"},edit:function({attributes:e,setAttributes:l}){const n=(0,t.useBlockProps)(),{back_link:d,checkout_button:s,compare:p,description:v,discount_code:h,expiration:i,highlight:m,layout:_,levels:u,price:b,renew_button:g}=e,C=[{value:"div",label:(0,a.__)("Div","pmpro-advanced-levels-shortcode")},{value:"table",label:(0,a.__)("Table","pmpro-advanced-levels-shortcode")},{value:"2col",label:(0,a.__)("2 Columns","pmpro-advanced-levels-shortcode")},{value:"3col",label:(0,a.__)("3 Columns","pmpro-advanced-levels-shortcode")},{value:"4col",label:(0,a.__)("4 Columns","pmpro-advanced-levels-shortcode")},{value:"compare_table",label:(0,a.__)("Compare Table","pmpro-advanced-levels-shortcode")}],w=[{value:"full",label:(0,a.__)("Full","pmpro-advanced-levels-shortcode")},{value:"short",label:(0,a.__)("Short","pmpro-advanced-levels-shortcode")},{value:"hide",label:(0,a.__)("Hide","pmpro-advanced-levels-shortcode")}];return(0,o.createElement)(o.Fragment,null,(0,o.createElement)(t.InspectorControls,null,(0,o.createElement)(r.PanelBody,null,(0,o.createElement)(r.TextControl,{label:(0,a.__)("Levels","pmpro-advanced-levels-shortcode"),help:(0,a.__)("Enter a comma-separated list of level IDs in the order you would like them to display.","pmpro-advanced-levels-shortcode"),value:u,onChange:e=>{l({levels:e})}}),(0,o.createElement)(r.SelectControl,{label:(0,a.__)("Layout","pmpro-advanced-levels-shortcode"),value:_,options:C,onChange:e=>{l({layout:e})}}),"compare_table"==_&&(0,o.createElement)(r.TextareaControl,{label:(0,a.__)("Compare Table Items","pmpro-advanced-levels-shortcode"),help:(0,a.__)('Enter groups of comparison rows separated by a semi-colon. For each comparison row, separate the label and each value with a comma (e.g. "Feature 1,No,Yes,Yes;Feature 2,No,No,Yes").',"pmpro-advanced-levels-shortcode"),value:p,onChange:e=>{l({compare:e})}}),(0,o.createElement)(r.SelectControl,{label:(0,a.__)("Price","pmpro-advanced-levels-shortcode"),help:(0,a.__)("Display the level price in your chosen format.","pmpro-advanced-levels-shortcode"),value:b,options:w,onChange:e=>{l({price:e})}}),(0,o.createElement)(r.TextControl,{label:(0,a.__)("Discount Code","pmpro-advanced-levels-shortcode"),help:(0,a.__)("Enter a discount code to apply to all applicable levels.","pmpro-advanced-levels-shortcode"),value:h,onChange:e=>{l({discount_code:e})}}),(0,o.createElement)(r.ToggleControl,{label:(0,a.__)("Level Description","pmpro-advanced-levels-shortcode"),help:(0,a.__)("Display the level description, if defined.","pmpro-advanced-levels-shortcode"),checked:v,onChange:e=>{l({description:e})}}),(0,o.createElement)(r.ToggleControl,{label:(0,a.__)("Level Expiration","pmpro-advanced-levels-shortcode"),help:(0,a.__)("Display the level expiration, if applicable.","pmpro-advanced-levels-shortcode"),checked:i,onChange:e=>{l({expiration:e})}}),(0,o.createElement)(r.TextControl,{label:(0,a.__)("Checkout Button Label","pmpro-advanced-levels-shortcode"),help:(0,a.__)("Enter custom text to change the label of the checkout button.","pmpro-advanced-levels-shortcode"),value:s,onChange:e=>{l({checkout_button:e})}}),(0,o.createElement)(r.TextControl,{label:(0,a.__)("Renew Button","pmpro-advanced-levels-shortcode"),help:(0,a.__)("Enter custom text to change the label of the renew button.","pmpro-advanced-levels-shortcode"),value:g,onChange:e=>{l({renew_button:e})}}),(0,o.createElement)(r.ToggleControl,{label:(0,a.__)("Back Link","pmpro-advanced-levels-shortcode"),help:(0,a.__)("Display a link to the membership account page for current members and the home page for everyone else.","pmpro-advanced-levels-shortcode"),checked:d,onChange:e=>{l({back_link:e})}}),(0,o.createElement)(r.TextControl,{label:(0,a.__)("Highlight","pmpro-advanced-levels-shortcode"),help:(0,a.__)("The single level ID to display as the featured level. Use the .pmpro_level-highlight class to add a custom highlight style for your theme.","pmpro-advanced-levels-shortcode"),value:m,onChange:e=>{l({highlight:e})}}))),(0,o.createElement)("div",n,(0,o.createElement)(c(),{block:"pmpro-advanced-levels/advanced-levels-page",attributes:e})))}})})(); -------------------------------------------------------------------------------- /templates/levels-div.php: -------------------------------------------------------------------------------- 1 | 14 |
15 | id ) { 21 | $element_classes[] = 'pmpro_level-highlight'; 22 | } 23 | if ( $level->current_level ) { 24 | $element_classes[] = 'pmpro_level-current'; 25 | } 26 | $element_class = implode( ' ', array_unique( $element_classes ) ); 27 | ?> 28 |
29 |
30 | id, $layout ); ?> 31 |

name, pmproal_allowed_html() ); ?>

32 | 33 | 34 |
35 | description ) ) { ?> 36 |
37 | description) ); ?> 38 |
39 | 40 |
41 |
42 |
43 | 44 | 45 | 47 |

48 | 53 |

54 | 55 |
56 |
57 | 61 |
62 | 63 |

64 | 65 |

66 | description ) ) { ?> 67 |
68 | description) ); ?> 69 |
70 | 71 |
72 | 73 |
74 |
75 | 76 |

77 | 82 |

83 |
84 |
85 | 86 | 87 | id, $layout); ?> 88 |
89 |
90 | 93 |
94 | -------------------------------------------------------------------------------- /readme.txt: -------------------------------------------------------------------------------- 1 | === Paid Memberships Pro - Advanced Levels Page Add On === 2 | Contributors: strangerstudios 3 | Tags: pmpro, paid memberships pro, members, memberships, levels, templates, pricing, columns, themes 4 | Requires at least: 5.4 5 | Tested up to: 6.6 6 | Stable tag: 1.2 7 | 8 | Build a beautiful membership levels page for Paid Memberships Pro using a customizable block or shortcode. 9 | 10 | == Description == 11 | 12 | An enhanced block and shortcode for customizing the display of your Membership Levels Page for Paid Memberships Pro. 13 | 14 | Attributes in the block settings or the [pmpro_advanced_levels] shortcode can be used to tweak how levels are displayed on the levels page, including options to display levels in a more HTML5-friendly div layout or popular column layouts. 15 | 16 | For more information, see add on documentation: 17 | https://www.paidmembershipspro.com/add-ons/pmpro-advanced-levels-shortcode/ 18 | 19 | == Installation == 20 | 21 | 1. Upload the `pmpro-advanced-levels` folder to the `/wp-content/plugins/` directory. 22 | 1. Activate the plugin through the 'Plugins' menu in WordPress. 23 | 1. Replace the [pmpro_levels] shortcode on your site with the Advanced Levels Page block or [pmpro_advanced_levels] shortcode. 24 | 25 | For more information about block settings and shortcode attributes, see the documentation here: 26 | https://www.paidmembershipspro.com/add-ons/pmpro-advanced-levels-shortcode/ 27 | 28 | == Changelog == 29 | = 1.2 - 2024-07-18 = 30 | * ENHANCEMENT: Updated the frontend UI for compatibility with PMPro v3.1. #73 (@kimcoleman) 31 | 32 | = 1.1 - 2024-02-13 = 33 | * BUG FIX/ENHANCEMENT: Now using an unordered-list on comparison table mobile view for better spacing between items. 34 | * BUG FIX: Fixing bug where comparison table mobile view was showing the incorrect comparison items. 35 | * REFACTOR: Cleaned up some code and logic around showing the "Renew" button on the levels page. 36 | 37 | = 1.0 - 2024-01-23 = 38 | * FEATURE: Added the Advanced Levels Block as a new way to build your levels page. 39 | * ENHANCEMENT: Now showing a message for admins only when an included level ID does not exist. 40 | * ENHANCEMENT: Improved styling; Column type layouts now use CSS flexbox for better appearance on all screens. 41 | * BUG FIX/ENHANCEMENT: Fixed issues with the discount code attribute and supported levels or duplicate levels layouts. 42 | * BUG FIX/ENHANCEMENT: Removed `template` shortcode attribute that was not fully supported by with modern theme frameworks. 43 | * BUG FIX: Fixed an issue where the "Renew" button on the level page would not show correctly. 44 | * BUG FIX: Fixed an issue where the "hide" price attribute wasn't working with the DIV layout. 45 | * REFACTOR: General code cleanup and improvements. 46 | 47 | = 0.2.6 - 2023-08-29 = 48 | * ENHANCEMENT: Improved support for the Custom Level Cost Text Add On and free levels. (@MaximilianoRicoTabo, @andrewlimaza) 49 | * ENHANCEMENT: Added the ability to show the level's description within the compare table layout. (@dparker1005) 50 | * ENHANCEMENT: Improved compatibility for PHP8+. (@JarrydLong) 51 | * BUG FIX: Fixed an issue where the discount code attribute would apply to all shortcodes on a page (if there were more than one shortcode on a single page). (@MaximilianoRicoTabo) 52 | * BUG FIX: Fixed an issue with compare table, when no `levels` attribute were supplied in the shortcode. (@andrewlimaza) 53 | * REFACTOR: Removed duplicate "template" attribute from shortcode. (@andrewlimaza) 54 | * REFACTOR: Moved to using the default get_option instead of pmpro_getOption functions. (@JarrydLong) 55 | 56 | = 0.2.5 - 2023-01-25 = 57 | * SECURITY: Improved sanitization and escaping of strings throughout the plugin. 58 | * ENHANCEMENT: Added support for Multiple Memberships Per User. This now shows the "Renew" button on the levels page for all active membership levels. 59 | * BUG FIX: Fixed a warning when no attributes were set for the shortcode. 60 | 61 | = .2.4 = 62 | * ENHANCEMENT: Added pmproal_before_level hook to the div/column layouts. 63 | * ENHANCEMENT: Added pmproal_after_level hook to the div/column layouts. 64 | * ENHANCEMENT: Added pmproal_extra_cols_before_header hook to the table layout. 65 | * ENHANCEMENT: Added pmproal_extra_cols_after_header hook to the table layout. 66 | * ENHANCEMENT: Added pmproal_extra_cols_before_body hook to the table layout. 67 | * ENHANCEMENT: Added pmproal_extra_cols_after_body hook to the table layout. 68 | 69 | = .2.3 = 70 | * BUG FIX: Make Read More text translatable 71 | * BUG FIX: Whitescreen in Conmparison table template (Thanks, BingoTheIguana on GitHub) 72 | * BUG FIX: Incorrect function name on init 73 | * BUG FIX/ENHANCEMENT: Glotpress updates (pmproal -> pmpro-advanced-levels-shortcode) 74 | * BUG FIX/ENHANCEMENT: Use standard WordPress URL builder 75 | * BUG FIX/ENHANCEMENT: Include discount code in all checkout page destination URLs 76 | * BUG FIX/ENHANCEMENT: Glotpress update (renamed translation files) 77 | * BUG FIX/ENHANCEMENT: Use array and add_query_arg() for all checkout page links and include discount code if specified 78 | * ENHANCEMENT: Add pmproal_before_template_load action 79 | 80 | = .2.2 = 81 | * BUG FIX: Fixed some strings that needed to be wrapped for translation. 82 | * BUG FIX/ENHANCEMENT: Now honoring the "Disable New Signups" option on the edit membership levels page. If checked, the level will be excluded from lists generated by the shortcode. 83 | * ENHANCEMENT: Updating stylesheet for WordPress 4.7 and new Twenty Seventeen theme support. 84 | * ENHANCEMENT: Added Spanish translation. (Thanks, David A. Lareo) 85 | * ENHANCEMENT: Added French translation. (Thanks, paramedicquebec on GitHub) 86 | 87 | = .2.1 = 88 | * ENHANCEMENT: Moving all individual layouts into separate template files. 89 | * BUG: Fixed responsive layout for small screens when using 2, 3, or 4 columns. 90 | 91 | = .2 = 92 | * BUG: Fixed highlight and current level classes in compare_table layout. 93 | * BUG: Fixed notice in compare_table layout. 94 | * ENHANCEMENT: Added responsive support for compare_table layout. Layout now collapses to a single column div-type layout with comparison attributes for device width < 767px. 95 | 96 | = .1.8.2 = 97 | * Fixed navigation clearing issue for Genesis layout option. 98 | * Added translation support to add-on and included Norwegian translation files. 99 | 100 | = .1.8.1 = 101 | * Fixed bug if first level column of compare_table was highlight. 102 | 103 | = .1.8 = 104 | * Added support for Levels Comparison Table layout type (ex. layout="compare_table"). 105 | * Added shortcode attribute for renew_button text. 106 | 107 | = .1.7 = 108 | * Added support for Bootstrap v3+ based themes. 109 | 110 | = .1.6 = 111 | * Fixed bug where the current level CSS class wasn't always set correctly on elements. 112 | 113 | = .1.5 = 114 | * Now applying the pmpro_levels_array filter to the array of levels when the levels are specified in a shortcode attribute. If you are using the pmpro_advanced_levels shortcode AND the pmpro_levels_array filter already, make sure your filter is programmed to account for this (perhaps by checking the globsl $post->ID to only run on certain pages/et). (Thanks, Camouyer) 115 | 116 | = .1.4 = 117 | * Fixed bug where discount codes were not being embedded in the checkout link URLs when added to the shortcode. (Thanks, 3fingas) 118 | 119 | = .1.3 = 120 | * If no specific levels are passed in the pmpro_levels_array filter is applied to the levels. 121 | 122 | = .1.2 = 123 | * Some more style updates. 124 | 125 | = .1.1 = 126 | * Fixed some PHP warnings that were affecting layout and some CSS styles were tweaked. 127 | * Fixed enqueue of CSS to work for different plugin directory names. 128 | 129 | = .1 = 130 | * First version. 131 | -------------------------------------------------------------------------------- /pmpro-advanced-levels-shortcode.php: -------------------------------------------------------------------------------- 1 | id; 49 | 50 | $args = array( 51 | 'post_type' => apply_filters('pmproal_level_landing_page_post_types', array('page', 'post')), 52 | 'meta_query' => array( 53 | array( 54 | 'key' => '_pmproal_landing_page_level', 55 | 'value' => $level_id, 56 | ) 57 | ) 58 | ); 59 | 60 | $posts = get_posts($args); 61 | 62 | if(empty($posts)) 63 | return false; 64 | else 65 | return $posts[0]; 66 | } 67 | 68 | /** 69 | * Function for allowed HTML tags in various templates 70 | * 71 | * @since 1.0 72 | * @return array $allowed_html The allowed HTML to be used for wp_kses escaping. 73 | */ 74 | function pmproal_allowed_html() { 75 | $allowed_html = array ( 76 | 'a' => array ( 77 | 'class' => array(), 78 | 'href' => array(), 79 | 'target' => array(), 80 | 'title' => array(), 81 | ), 82 | 'p' => array( 83 | 'class' => array(), 84 | ), 85 | 'b' => array( 86 | 'class' => array(), 87 | ), 88 | 'em' => array( 89 | 'class' => array(), 90 | ), 91 | 'br' => array(), 92 | 'strike' => array(), 93 | 'strong' => array(), 94 | ); 95 | 96 | /** 97 | * Filters the allowed HTML tags for the Advanced Levels page. 98 | * @param array $allowed_html The allowed html elements for the Advanced Levels page escaping where wp_kses is used (like in compared elements etc.) 99 | * @since 1.0 100 | */ 101 | return apply_filters( 'pmproal_allowed_html', $allowed_html ); 102 | } 103 | 104 | /** 105 | * Function to get the level price. 106 | * 107 | * @since 1.0 108 | * @param object $level The level object. 109 | * @param string $price The price type from shortcode or block atts. 110 | * @return string $price_text The price text to be displayed. 111 | */ 112 | function pmproal_getLevelPrice( $level, $price ) { 113 | // Build the selectors for the price element. 114 | $price_classes = array(); 115 | $price_classes[] = 'pmpro_level-price'; 116 | 117 | if ( isset( $level->discounted_level ) ) { 118 | $level_to_price = $level->discounted_level; 119 | } else { 120 | $level_to_price = $level; 121 | } 122 | if ( pmpro_isLevelFree ( $level_to_price ) ) { 123 | // Add free class if level is free. 124 | $price_classes[] = 'pmpro_level-price-free'; 125 | if ( $price === 'full' ) { 126 | $price_text = pmpro_getLevelCost( $level_to_price, true, false ); 127 | } else { 128 | $price_text = pmpro_getLevelCost( $level_to_price, false, true ); 129 | } 130 | } elseif ( $price === 'full' ) { 131 | $price_text = pmpro_getLevelCost( $level_to_price, true, false ); 132 | } else { 133 | $price_text = pmpro_getLevelCost( $level_to_price, false, true ); 134 | } 135 | 136 | // Prepare the class selectors for the price element. 137 | $price_class = implode( ' ', array_unique( $price_classes ) ); 138 | ?> 139 |

140 | 141 |

142 | current_level ) { 163 | // Show checkout button if the user has no membership level or $current_level is false 164 | $button_classes[] = 'pmpro_btn-select'; 165 | $button_link = add_query_arg( $level->link_arguments, pmpro_url( 'checkout', '', 'https' ) ); 166 | $button_text = $checkout_button; 167 | } elseif( $level->current_level ) { 168 | // Get specific level details for the user 169 | $specific_level = pmpro_getSpecificMembershipLevelForUser( $current_user->ID, $level->id ); 170 | if ( pmpro_isLevelExpiringSoon( $specific_level ) ) { 171 | // Show renew button if the level is expiring soon and signups are allowed 172 | $button_classes[] = 'pmpro_btn-select'; 173 | $button_classes[] = 'pmpro_btn-renew'; 174 | $button_link = add_query_arg( $level->link_arguments, pmpro_url( 'checkout', '', 'https' ) ); 175 | $button_text = $renew_button; 176 | } else { 177 | // Show account button otherwise 178 | $button_classes[] = 'disabled'; 179 | $button_link = pmpro_url( 'account' ); 180 | $button_text = $account_button; 181 | } 182 | } 183 | 184 | // Output the button. 185 | ?> 186 | 187 | ' . esc_html__( 'Docs', 'pmpro-advanced-levels-shortcode' ) . '', 208 | '' . esc_html__( 'Support', 'pmpro-advanced-levels-shortcode' ) . '', 209 | ); 210 | $links = array_merge($links, $new_links); 211 | } 212 | return $links; 213 | } 214 | add_filter('plugin_row_meta', 'pmpro_advanced_levels_plugin_row_meta', 10, 2); 215 | -------------------------------------------------------------------------------- /languages/pmpro-advanced-levels-shortcode.pot: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2024 Paid Memberships Pro 2 | # This file is distributed under the same license as the Paid Memberships Pro - Advanced Levels Page Add On plugin. 3 | msgid "" 4 | msgstr "" 5 | "Project-Id-Version: Paid Memberships Pro - Advanced Levels Page Add On 1.2\n" 6 | "Report-Msgid-Bugs-To: info@paidmembershipspro.com\n" 7 | "Last-Translator: Paid Memberships Pro \n" 8 | "Language-Team: Paid Memberships Pro \n" 9 | "MIME-Version: 1.0\n" 10 | "Content-Type: text/plain; charset=UTF-8\n" 11 | "Content-Transfer-Encoding: 8bit\n" 12 | "POT-Creation-Date: 2024-07-18T17:25:14+00:00\n" 13 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" 14 | "X-Generator: WP-CLI 2.10.0\n" 15 | "X-Domain: pmpro-advanced-levels-shortcode\n" 16 | 17 | #. Plugin Name of the plugin 18 | #: pmpro-advanced-levels-shortcode.php 19 | msgid "Paid Memberships Pro - Advanced Levels Page Add On" 20 | msgstr "" 21 | 22 | #. Plugin URI of the plugin 23 | #: pmpro-advanced-levels-shortcode.php 24 | msgid "https://www.paidmembershipspro.com/add-ons/pmpro-advanced-levels-shortcode/" 25 | msgstr "" 26 | 27 | #. Description of the plugin 28 | #: pmpro-advanced-levels-shortcode.php 29 | msgid "Build a beautiful membership levels page for Paid Memberships Pro using a customizable block or shortcode." 30 | msgstr "" 31 | 32 | #. Author of the plugin 33 | #: pmpro-advanced-levels-shortcode.php 34 | msgid "Paid Memberships Pro" 35 | msgstr "" 36 | 37 | #. Author URI of the plugin 38 | #: pmpro-advanced-levels-shortcode.php 39 | msgid "https://www.paidmembershipspro.com/" 40 | msgstr "" 41 | 42 | #: pmpro-advanced-levels-shortcode.php:207 43 | msgid "View Documentation" 44 | msgstr "" 45 | 46 | #: pmpro-advanced-levels-shortcode.php:207 47 | msgid "Docs" 48 | msgstr "" 49 | 50 | #: pmpro-advanced-levels-shortcode.php:208 51 | msgid "Visit Customer Support Forum" 52 | msgstr "" 53 | 54 | #: pmpro-advanced-levels-shortcode.php:208 55 | msgid "Support" 56 | msgstr "" 57 | 58 | #: templates/levels-compare_table.php:30 59 | #: templates/levels-table.php:19 60 | msgid "Level" 61 | msgstr "" 62 | 63 | #: templates/levels-compare_table.php:43 64 | #: templates/levels-table.php:21 65 | #: blocks/build/advanced-levels-page/index.js:1 66 | #: blocks/src/advanced-levels-page/edit.js:90 67 | msgid "Price" 68 | msgstr "" 69 | 70 | #: templates/levels-compare_table.php:53 71 | msgid "Description" 72 | msgstr "" 73 | 74 | #: templates/levels-compare_table.php:63 75 | #: templates/levels-compare_table.php:146 76 | #: templates/levels-table.php:24 77 | msgid "Expiration" 78 | msgstr "" 79 | 80 | #: templates/levels-compare_table.php:69 81 | #: templates/levels-compare_table.php:152 82 | #: templates/levels-compare_table.php:253 83 | #: templates/levels-div.php:49 84 | #: templates/levels-div.php:78 85 | #: templates/levels-table.php:63 86 | msgid "Membership never expires." 87 | msgstr "" 88 | 89 | #: templates/levels-compare_table.php:118 90 | msgid "Yes" 91 | msgstr "" 92 | 93 | #: templates/levels-compare_table.php:120 94 | msgid "No" 95 | msgstr "" 96 | 97 | #: templates/levels.php:12 98 | msgid "Your Level" 99 | msgstr "" 100 | 101 | #: templates/levels.php:15 102 | msgid "Select" 103 | msgstr "" 104 | 105 | #: templates/levels.php:24 106 | msgid "Renew" 107 | msgstr "" 108 | 109 | #: templates/levels.php:57 110 | msgid "Read More" 111 | msgstr "" 112 | 113 | #: templates/levels.php:127 114 | msgid "Admin-only message: The following level IDs are not shown because they do not exist or signup is disabled: %s" 115 | msgstr "" 116 | 117 | #: templates/levels.php:191 118 | msgid "← Return to Your Account" 119 | msgstr "" 120 | 121 | #: templates/levels.php:193 122 | msgid "← Return to Home" 123 | msgstr "" 124 | 125 | #: blocks/build/advanced-levels-page/index.js:1 126 | #: blocks/src/advanced-levels-page/edit.js:39 127 | msgid "Div" 128 | msgstr "" 129 | 130 | #: blocks/build/advanced-levels-page/index.js:1 131 | #: blocks/src/advanced-levels-page/edit.js:40 132 | msgid "Table" 133 | msgstr "" 134 | 135 | #: blocks/build/advanced-levels-page/index.js:1 136 | #: blocks/src/advanced-levels-page/edit.js:41 137 | msgid "2 Columns" 138 | msgstr "" 139 | 140 | #: blocks/build/advanced-levels-page/index.js:1 141 | #: blocks/src/advanced-levels-page/edit.js:42 142 | msgid "3 Columns" 143 | msgstr "" 144 | 145 | #: blocks/build/advanced-levels-page/index.js:1 146 | #: blocks/src/advanced-levels-page/edit.js:43 147 | msgid "4 Columns" 148 | msgstr "" 149 | 150 | #: blocks/build/advanced-levels-page/index.js:1 151 | #: blocks/src/advanced-levels-page/edit.js:44 152 | msgid "Compare Table" 153 | msgstr "" 154 | 155 | #: blocks/build/advanced-levels-page/index.js:1 156 | #: blocks/src/advanced-levels-page/edit.js:48 157 | msgid "Full" 158 | msgstr "" 159 | 160 | #: blocks/build/advanced-levels-page/index.js:1 161 | #: blocks/src/advanced-levels-page/edit.js:49 162 | msgid "Short" 163 | msgstr "" 164 | 165 | #: blocks/build/advanced-levels-page/index.js:1 166 | #: blocks/src/advanced-levels-page/edit.js:50 167 | msgid "Hide" 168 | msgstr "" 169 | 170 | #: blocks/build/advanced-levels-page/index.js:1 171 | #: blocks/src/advanced-levels-page/edit.js:58 172 | msgid "Levels" 173 | msgstr "" 174 | 175 | #: blocks/build/advanced-levels-page/index.js:1 176 | #: blocks/src/advanced-levels-page/edit.js:59 177 | msgid "Enter a comma-separated list of level IDs in the order you would like them to display." 178 | msgstr "" 179 | 180 | #: blocks/build/advanced-levels-page/index.js:1 181 | #: blocks/src/advanced-levels-page/edit.js:68 182 | msgid "Layout" 183 | msgstr "" 184 | 185 | #: blocks/build/advanced-levels-page/index.js:1 186 | #: blocks/src/advanced-levels-page/edit.js:79 187 | msgid "Compare Table Items" 188 | msgstr "" 189 | 190 | #: blocks/build/advanced-levels-page/index.js:1 191 | #: blocks/src/advanced-levels-page/edit.js:80 192 | msgid "Enter groups of comparison rows separated by a semi-colon. For each comparison row, separate the label and each value with a comma (e.g. \"Feature 1,No,Yes,Yes;Feature 2,No,No,Yes\")." 193 | msgstr "" 194 | 195 | #: blocks/build/advanced-levels-page/index.js:1 196 | #: blocks/src/advanced-levels-page/edit.js:91 197 | msgid "Display the level price in your chosen format." 198 | msgstr "" 199 | 200 | #: blocks/build/advanced-levels-page/index.js:1 201 | #: blocks/src/advanced-levels-page/edit.js:101 202 | msgid "Discount Code" 203 | msgstr "" 204 | 205 | #: blocks/build/advanced-levels-page/index.js:1 206 | #: blocks/src/advanced-levels-page/edit.js:102 207 | msgid "Enter a discount code to apply to all applicable levels." 208 | msgstr "" 209 | 210 | #: blocks/build/advanced-levels-page/index.js:1 211 | #: blocks/src/advanced-levels-page/edit.js:111 212 | msgid "Level Description" 213 | msgstr "" 214 | 215 | #: blocks/build/advanced-levels-page/index.js:1 216 | #: blocks/src/advanced-levels-page/edit.js:112 217 | msgid "Display the level description, if defined." 218 | msgstr "" 219 | 220 | #: blocks/build/advanced-levels-page/index.js:1 221 | #: blocks/src/advanced-levels-page/edit.js:121 222 | msgid "Level Expiration" 223 | msgstr "" 224 | 225 | #: blocks/build/advanced-levels-page/index.js:1 226 | #: blocks/src/advanced-levels-page/edit.js:122 227 | msgid "Display the level expiration, if applicable." 228 | msgstr "" 229 | 230 | #: blocks/build/advanced-levels-page/index.js:1 231 | #: blocks/src/advanced-levels-page/edit.js:131 232 | msgid "Checkout Button Label" 233 | msgstr "" 234 | 235 | #: blocks/build/advanced-levels-page/index.js:1 236 | #: blocks/src/advanced-levels-page/edit.js:132 237 | msgid "Enter custom text to change the label of the checkout button." 238 | msgstr "" 239 | 240 | #: blocks/build/advanced-levels-page/index.js:1 241 | #: blocks/src/advanced-levels-page/edit.js:141 242 | msgid "Renew Button" 243 | msgstr "" 244 | 245 | #: blocks/build/advanced-levels-page/index.js:1 246 | #: blocks/src/advanced-levels-page/edit.js:142 247 | msgid "Enter custom text to change the label of the renew button." 248 | msgstr "" 249 | 250 | #: blocks/build/advanced-levels-page/index.js:1 251 | #: blocks/src/advanced-levels-page/edit.js:151 252 | msgid "Back Link" 253 | msgstr "" 254 | 255 | #: blocks/build/advanced-levels-page/index.js:1 256 | #: blocks/src/advanced-levels-page/edit.js:152 257 | msgid "Display a link to the membership account page for current members and the home page for everyone else." 258 | msgstr "" 259 | 260 | #: blocks/build/advanced-levels-page/index.js:1 261 | #: blocks/src/advanced-levels-page/edit.js:161 262 | msgid "Highlight" 263 | msgstr "" 264 | 265 | #: blocks/build/advanced-levels-page/index.js:1 266 | #: blocks/src/advanced-levels-page/edit.js:162 267 | msgid "The single level ID to display as the featured level. Use the .pmpro_level-highlight class to add a custom highlight style for your theme." 268 | msgstr "" 269 | -------------------------------------------------------------------------------- /templates/levels.php: -------------------------------------------------------------------------------- 1 | __('Your Level', 'pmpro-advanced-levels-shortcode'), 13 | 'back_link' => '1', 14 | 'compare' => NULL, 15 | 'checkout_button' => __('Select', 'pmpro-advanced-levels-shortcode'), 16 | 'description' => '1', 17 | 'discount_code' => NULL, 18 | 'expiration' => '1', 19 | 'highlight' => NULL, 20 | 'layout' => 'div', 21 | 'levels' => NULL, 22 | 'more_button' => NULL, 23 | 'price' => 'short', 24 | 'renew_button' => __('Renew', 'pmpro-advanced-levels-shortcode'), 25 | 'template' => NULL, 26 | ), $atts)); 27 | 28 | global $wpdb, $pmpro_msg, $pmpro_msgt, $current_user, $pmpro_currency_symbol, $pmpro_all_levels, $pmpro_visible_levels, $current_user, $membership_levels; 29 | 30 | if ( $back_link === "0" || $back_link === "false" || $back_link === "no" || ! $back_link ) 31 | $back_link = false; 32 | else 33 | $back_link = true; 34 | 35 | if ( $compare === "0" || $compare === "false" || $compare === "no" || empty( $compare ) ) { 36 | $compare = false; 37 | } else { 38 | $compare = rtrim( $compare, ';' ); // clear up a stray ; at the end. 39 | $compareitems = explode( ";", $compare ); 40 | } 41 | 42 | if ( $description === "0" || $description === "false" || $description === "no" || ! $description ) { 43 | $description = false; 44 | } else { 45 | $description = true; 46 | } 47 | 48 | if ( $expiration === "0" || $expiration === "false" || $expiration === "no" || ! $expiration ) { 49 | $expiration = false; 50 | } else { 51 | $expiration = true; 52 | } 53 | 54 | if ( $more_button === "0" || $more_button === "false" || $more_button === "no" || empty($more_button) || ! $more_button ) { 55 | $more_button = false; 56 | } elseif ( $more_button === "1" || $more_button === "true" || $more_button === "yes" || $more_button == true ) { 57 | $more_button = __( "Read More", "pmpro-advanced-levels-shortcode" ); 58 | } 59 | 60 | if ( $price === "0" || $price === "false" || $price === "hide" ) { 61 | $show_price = false; 62 | } else { 63 | $show_price = true; 64 | } 65 | 66 | ob_start(); 67 | 68 | //make sure pmpro_levels has all levels 69 | if ( ! isset( $pmpro_all_levels ) ) { 70 | $pmpro_all_levels = pmpro_getAllLevels( false, true ); 71 | } 72 | 73 | $pmpro_levels_filtered = array(); 74 | if ( ! empty( $levels ) ) { 75 | // Generate level data for SQL query. 76 | if ( is_array( $levels ) ) { 77 | // We need to ensure backwards compatibility with the old way of passing levels. 78 | // Select2 passes a multidimensional array but it used to be single dimension array. 79 | $levels = count( $levels ) == count( $levels, COUNT_RECURSIVE ) 80 | ? implode( ',', $levels ) 81 | : implode( ',', wp_list_pluck( $levels, 'value' ) ); 82 | } 83 | 84 | // Clean up the $levels_order to prevent false positives and ensure data integrity. 85 | $levels_order = explode( ',', $levels ); 86 | $levels_order = array_map( 'trim', $levels_order ); 87 | $levels_order = array_filter( $levels_order ); 88 | 89 | //loop through $levels_order array and pull levels from $levels 90 | foreach($levels_order as $level_id) { 91 | foreach($pmpro_all_levels as $level) { 92 | if($level->id == $level_id && true == $level->allow_signups) { 93 | $pmpro_levels_filtered[$level->id] = $level; 94 | break; 95 | } 96 | } 97 | } 98 | } else { 99 | $pmpro_level_order = get_option( 'pmpro_level_order' ) ?: $pmpro_all_levels; 100 | 101 | if ( ! is_array( $pmpro_level_order ) ) { 102 | $levels_order = explode( ',', $pmpro_level_order ); 103 | } else { 104 | $levels_order = array_keys( $pmpro_level_order ); 105 | } 106 | 107 | // Reorder array and remove levels that don't exist or have signup disabled. 108 | foreach ( $levels_order as $level_id ) { 109 | foreach ( $pmpro_all_levels as $key => $level ) { 110 | if ( $level_id == $level->id && true == $level->allow_signups) { 111 | $pmpro_levels_filtered[] = $pmpro_all_levels[$key]; 112 | } 113 | } 114 | } 115 | } 116 | 117 | // Check if we have any specified level IDs that aren't shown and set a message for admins. 118 | if ( ! empty( $levels ) ) { 119 | $pmpro_levels_filtered_not_shown = array_diff( $levels_order, wp_list_pluck( $pmpro_levels_filtered, 'id' ) ); 120 | if ( ! empty( $pmpro_levels_filtered_not_shown ) && current_user_can( 'manage_options' ) ) { 121 | // Make sure no level IDs are duplicated. 122 | $pmpro_levels_filtered_not_shown = array_unique( $pmpro_levels_filtered_not_shown ); 123 | 124 | // Create a message to display to admins. 125 | pmpro_setMessage( 126 | sprintf( 127 | esc_html__( 'Admin-only message: The following level IDs are not shown because they do not exist or signup is disabled: %s', 'pmpro-advanced-levels-shortcode' ), 128 | implode( ', ', $pmpro_levels_filtered_not_shown ) 129 | ), 130 | 'pmpro_error' 131 | ); 132 | } 133 | } 134 | 135 | $pmpro_levels_filtered = apply_filters("pmpro_levels_array", $pmpro_levels_filtered); 136 | $numeric_levels_array = array_values($pmpro_levels_filtered); 137 | 138 | // Allows you to add ?discount_code=code to your URL. Shortcode attribute overrides URL parameter. 139 | if ( empty( $discount_code ) && ! empty( $_REQUEST['discount_code'] ) ) { 140 | $discount_code = sanitize_text_field( $_REQUEST['discount_code'] ); 141 | } 142 | 143 | // Set up the link arguments and level objects to price. 144 | foreach ( $pmpro_levels_filtered as $level ) { 145 | // Set some defaults on the object. 146 | $level->discounted_level = null; 147 | $level->current_level = false; 148 | 149 | // Set the level ID in the link arguments. 150 | $level->link_arguments = array(); 151 | $level->link_arguments['level'] = $level->id; 152 | 153 | // Check the discount code for this level and update the link arguments if applicable. 154 | if ( ! empty( $discount_code ) && pmpro_checkDiscountCode( $discount_code, $level->id ) ) { 155 | $level->link_arguments['discount_code'] = $discount_code; 156 | $level->discounted_level = pmpro_getLevelAtCheckout( $level->id, $discount_code ); 157 | } 158 | 159 | // Check if user has this level. 160 | $level->current_level = pmpro_hasMembershipLevel( $level->id ); 161 | } 162 | 163 | // Open the wrapping div for the levels. 164 | ?> 165 |
166 | 170 |
171 | 186 | 187 | 188 |
189 | 190 | 191 | 192 | 193 | 194 | 195 | 196 |
197 | 198 | 199 |
200 | 201 | $level ) { 9 | $element_classes = array(); 10 | $element_classes[] = 'pmpro_level'; 11 | if ( $highlight == $level->id ) { 12 | $element_classes[] = 'pmpro_level-highlight'; 13 | } 14 | if ( $level->current_level ) { 15 | $element_classes[] = 'pmpro_level-current'; 16 | } 17 | 18 | $element_class = implode( ' ', array_unique( $element_classes ) ); 19 | $pmpro_levels_filtered[$key]->element_class = $element_class; 20 | } 21 | 22 | // Build the selectors for the levels wrapper. 23 | $wrapper_classes = array(); 24 | $wrapper_classes[] = 'pmpro_advanced_levels-compare_table'; 25 | $wrapper_class = implode( ' ', array_unique( $wrapper_classes ) ); 26 | ?> 27 | 28 | 29 | 30 | 31 | 34 | 37 | 40 | 41 | 42 | 43 | 44 | 45 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 84 | 85 | 86 | 87 | 88 | 91 | 92 | = 0 && ! empty( $numeric_levels_array[$count] ) ) { 109 | $level = $numeric_levels_array[$count]; 110 | } else { 111 | $level = NULL; 112 | } 113 | $count++; 114 | ?> 115 | 126 | 129 | 130 | 134 | 135 | 136 | 137 | 138 | 139 | 142 | 143 | 144 | 145 | 146 | 147 | 148 | 158 | 159 | 160 | 161 | 162 |
35 |

name, pmproal_allowed_html() ); ?>

36 |
46 | 47 |
56 | description); ?> 57 |
66 | 74 |
  82 | 83 |
> 116 | ' . esc_html__( 'Yes', 'pmpro-advanced-levels-shortcode' ) . ''; 119 | } elseif ( $compareitem_value == '0' ) { 120 | echo '' . esc_html__( 'No', 'pmpro-advanced-levels-shortcode' ) . ''; 121 | } else { 122 | echo wp_kses( $compareitem_value, pmproal_allowed_html() ); 123 | } 124 | ?> 125 |
  140 | 141 |
149 | 157 |
163 | 164 | 178 |
179 | id ) { 190 | $element_classes[] = 'pmpro_level-highlight'; 191 | } 192 | if ( $level->current_level ) { 193 | $element_classes[] = 'pmpro_level-current'; 194 | } 195 | $element_class = implode( ' ', array_unique( $element_classes ) ); 196 | ?> 197 |
198 | id, $layout ); ?> 199 | 200 |

name, pmproal_allowed_html() ); ?>

201 | 202 | description ) ) { ?> 203 |
204 | description) ); ?> 205 |
206 | 207 | 208 | '; 210 | foreach ( $compareitems as $compareitem ) { 211 | 212 | // Build the array of compare items. 213 | $compareitem_values = explode(",", $compareitem); 214 | 215 | /** 216 | * Filter the compare items. 217 | * 218 | * @since 0.2.6 219 | * @param array $compareitem_values The compare items. 220 | * @return array $compareitem_values The filtered compare items. 221 | */ 222 | $compareitem_values = apply_filters( 'pmpro_advanced_levels_compare_items', $compareitem_values ); 223 | 224 | $compareitem_values = explode( ',', $compareitem ); 225 | if ( $count >= 0 && ! empty( $numeric_levels_array[$count] ) ) { 226 | $compare_level = $numeric_levels_array[$count]; 227 | } else { 228 | $compare_level = NULL; 229 | } 230 | 231 | if ( $compareitem_values[$count] != '0' ) { 232 | if ( $compareitem_values[$count] == '1' ) { 233 | echo '
  • ' . wp_kses( $compareitem_values[0], pmproal_allowed_html() ) . '
  • '; 234 | } else { 235 | echo '
  • ' . wp_kses( $compareitem_values[0], pmproal_allowed_html() ) . ': '; 236 | echo wp_kses( $compareitem_values[$count], pmproal_allowed_html() ) . '
  • '; 237 | } 238 | } 239 | } 240 | echo ''; 241 | } ?> 242 | 243 |
    244 | 245 | 246 | 247 | 248 | 249 | 251 |

    252 | 257 |

    258 | 259 | 260 |
    261 | id, $layout ); ?> 262 |
    263 | 266 |
    267 | -------------------------------------------------------------------------------- /languages/pmpro-advanced-levels-shortcode.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2024 Paid Memberships Pro 2 | # This file is distributed under the same license as the Paid Memberships Pro - Advanced Levels Page Add On plugin. 3 | msgid "" 4 | msgstr "" 5 | "Project-Id-Version: Paid Memberships Pro - Advanced Levels Page Add On 1.2\n" 6 | "Report-Msgid-Bugs-To: info@paidmembershipspro.com\n" 7 | "Last-Translator: Paid Memberships Pro \n" 8 | "Language-Team: Paid Memberships Pro \n" 9 | "MIME-Version: 1.0\n" 10 | "Content-Type: text/plain; charset=UTF-8\n" 11 | "Content-Transfer-Encoding: 8bit\n" 12 | "POT-Creation-Date: 2024-07-18T17:25:14+00:00\n" 13 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" 14 | "X-Generator: WP-CLI 2.10.0\n" 15 | "X-Domain: pmpro-advanced-levels-shortcode\n" 16 | 17 | #: pmpro-advanced-levels-shortcode.php:28 18 | #: pmpro-advanced-levels-shortcode.php:73 19 | #: pmpro-advanced-levels-shortcode.php:109 20 | #: pmpro-advanced-levels-shortcode.php:209 21 | #: pmpro-advanced-levels-shortcode.php:207 22 | msgid "View Documentation" 23 | msgstr "" 24 | 25 | #: pmpro-advanced-levels-shortcode.php:28 26 | #: pmpro-advanced-levels-shortcode.php:73 27 | #: pmpro-advanced-levels-shortcode.php:109 28 | #: pmpro-advanced-levels-shortcode.php:209 29 | #: pmpro-advanced-levels-shortcode.php:207 30 | msgid "Docs" 31 | msgstr "" 32 | 33 | #: pmpro-advanced-levels-shortcode.php:29 34 | #: pmpro-advanced-levels-shortcode.php:74 35 | #: pmpro-advanced-levels-shortcode.php:110 36 | #: pmpro-advanced-levels-shortcode.php:210 37 | #: pmpro-advanced-levels-shortcode.php:208 38 | msgid "Visit Customer Support Forum" 39 | msgstr "" 40 | 41 | #: pmpro-advanced-levels-shortcode.php:29 42 | #: pmpro-advanced-levels-shortcode.php:74 43 | #: pmpro-advanced-levels-shortcode.php:110 44 | #: pmpro-advanced-levels-shortcode.php:210 45 | #: pmpro-advanced-levels-shortcode.php:208 46 | msgid "Support" 47 | msgstr "" 48 | 49 | #: templates/levels.php:16 50 | #: templates/levels.php:21 51 | #: templates/levels.php:15 52 | msgid "Select" 53 | msgstr "" 54 | 55 | #: templates/levels.php:113 56 | #: templates/levels-compare_table.php:10 57 | #: templates/levels-table.php:19 58 | #: templates/levels-compare_table.php:29 59 | #: templates/levels-table.php:16 60 | #: templates/levels-compare_table.php:30 61 | msgid "Level" 62 | msgstr "" 63 | 64 | #: templates/levels.php:115 65 | #: templates/levels-compare_table.php:25 66 | #: templates/levels-table.php:21 67 | #: templates/levels-compare_table.php:42 68 | #: templates/levels-table.php:18 69 | #: blocks/build/advanced-levels-page/index.js:1 70 | #: blocks/src/advanced-levels-page/edit.js:89 71 | #: templates/levels-compare_table.php:43 72 | #: blocks/src/advanced-levels-page/edit.js:90 73 | msgid "Price" 74 | msgstr "" 75 | 76 | #: templates/levels.php:118 77 | #: templates/levels-compare_table.php:61 78 | #: templates/levels-compare_table.php:237 79 | #: templates/levels-table.php:24 80 | #: templates/levels-compare_table.php:71 81 | #: templates/levels-compare_table.php:249 82 | #: templates/levels-compare_table.php:62 83 | #: templates/levels-compare_table.php:145 84 | #: templates/levels-table.php:21 85 | #: templates/levels-compare_table.php:63 86 | #: templates/levels-compare_table.php:146 87 | msgid "Expiration" 88 | msgstr "" 89 | 90 | #: templates/levels.php:156 91 | #: templates/levels.php:335 92 | #: templates/levels.php:523 93 | #: templates/levels.php:623 94 | #: templates/levels-compare_table.php:468 95 | #: templates/levels-div.php:125 96 | #: templates/levels-div.php:321 97 | #: templates/levels-div.php:426 98 | #: templates/levels-table.php:63 99 | #: templates/levels-compare_table.php:478 100 | #: templates/levels-div.php:121 101 | #: templates/levels-div.php:313 102 | #: templates/levels-div.php:418 103 | msgid "Membership Never Expires." 104 | msgstr "" 105 | 106 | #: templates/levels.php:191 107 | #: templates/levels.php:375 108 | #: templates/levels.php:446 109 | #: templates/levels.php:587 110 | #: templates/levels.php:30 111 | #: templates/levels.php:24 112 | msgid "Renew" 113 | msgstr "" 114 | 115 | #: templates/levels.php:203 116 | #: templates/levels.php:387 117 | #: templates/levels.php:458 118 | #: templates/levels.php:599 119 | #: templates/levels.php:17 120 | #: templates/levels.php:12 121 | msgid "Your Level" 122 | msgstr "" 123 | 124 | #: templates/levels.php:305 125 | #: templates/levels.php:486 126 | #: templates/levels-compare_table.php:334 127 | #: templates/levels-div.php:95 128 | #: templates/levels-div.php:282 129 | msgid "Free." 130 | msgstr "" 131 | 132 | #: templates/levels.php:311 133 | #: templates/levels.php:492 134 | #: templates/levels-compare_table.php:37 135 | #: templates/levels-compare_table.php:43 136 | #: templates/levels-compare_table.php:340 137 | #: templates/levels-div.php:101 138 | #: templates/levels-div.php:288 139 | #: templates/levels-compare_table.php:348 140 | #: templates/levels-div.php:95 141 | #: templates/levels-div.php:278 142 | #: pmpro-advanced-levels-shortcode.php:130 143 | msgid "Free" 144 | msgstr "" 145 | 146 | #: templates/levels.php:646 147 | #: templates/levels.php:164 148 | #: templates/levels.php:165 149 | #: templates/levels.php:184 150 | #: templates/levels.php:186 151 | #: templates/levels.php:191 152 | msgid "← Return to Your Account" 153 | msgstr "" 154 | 155 | #: templates/levels.php:648 156 | #: templates/levels.php:166 157 | #: templates/levels.php:167 158 | #: templates/levels.php:186 159 | #: templates/levels.php:188 160 | #: templates/levels.php:193 161 | msgid "← Return to Home" 162 | msgstr "" 163 | 164 | #. Plugin Name of the plugin/theme 165 | #. Plugin Name of the plugin 166 | msgid "Paid Memberships Pro - Advanced Levels Page Shortcode Add On" 167 | msgstr "" 168 | 169 | #. Plugin URI of the plugin/theme 170 | msgid "http://www.paidmembershipspro.com/wp/pmpro-advanced-levels/" 171 | msgstr "" 172 | 173 | #. Description of the plugin/theme 174 | #. Description of the plugin 175 | msgid "An enhanced shortcode for customizing the display of your Membership Levels Page for Paid Memberships Pro" 176 | msgstr "" 177 | 178 | #. Author of the plugin/theme 179 | msgid "Stranger Studios" 180 | msgstr "" 181 | 182 | #. Author URI of the plugin/theme 183 | msgid "http://www.strangerstudios.com" 184 | msgstr "" 185 | 186 | #. Plugin URI of the plugin 187 | #: pmpro-advanced-levels-shortcode.php 188 | msgid "https://www.paidmembershipspro.com/add-ons/pmpro-advanced-levels-shortcode/" 189 | msgstr "" 190 | 191 | #. Author of the plugin 192 | #: pmpro-advanced-levels-shortcode.php 193 | msgid "Paid Memberships Pro" 194 | msgstr "" 195 | 196 | #. Author URI of the plugin 197 | #: pmpro-advanced-levels-shortcode.php 198 | msgid "https://www.paidmembershipspro.com/" 199 | msgstr "" 200 | 201 | #: templates/levels-compare_table.php:70 202 | #: templates/levels-compare_table.php:80 203 | #: templates/levels-compare_table.php:68 204 | #: templates/levels-compare_table.php:151 205 | #: templates/levels-compare_table.php:235 206 | #: templates/levels-div.php:50 207 | #: templates/levels-div.php:77 208 | #: templates/levels-table.php:61 209 | #: templates/levels-compare_table.php:69 210 | #: templates/levels-compare_table.php:152 211 | #: templates/levels-compare_table.php:236 212 | #: templates/levels-compare_table.php:253 213 | #: templates/levels-div.php:49 214 | #: templates/levels-div.php:78 215 | #: templates/levels-table.php:63 216 | msgid "Membership never expires." 217 | msgstr "" 218 | 219 | #: templates/levels-compare_table.php:258 220 | #: templates/levels-compare_table.php:270 221 | msgid "More Information" 222 | msgstr "" 223 | 224 | #: templates/levels.php:60 225 | #: templates/levels.php:59 226 | #: templates/levels.php:57 227 | msgid "Read More" 228 | msgstr "" 229 | 230 | #: templates/levels-compare_table.php:56 231 | #: templates/levels-compare_table.php:52 232 | #: templates/levels-compare_table.php:53 233 | msgid "Description" 234 | msgstr "" 235 | 236 | #: templates/levels-compare_table.php:117 237 | #: templates/levels-compare_table.php:118 238 | msgid "Yes" 239 | msgstr "" 240 | 241 | #: templates/levels-compare_table.php:119 242 | #: templates/levels-compare_table.php:120 243 | msgid "No" 244 | msgstr "" 245 | 246 | #: templates/levels.php:126 247 | #: templates/levels.php:127 248 | msgid "Admin-only message: The following level IDs are not shown because they do not exist or signup is disabled: %s" 249 | msgstr "" 250 | 251 | #: blocks/build/advanced-levels-page/index.js:1 252 | #: blocks/src/advanced-levels-page/edit.js:38 253 | #: blocks/src/advanced-levels-page/edit.js:39 254 | msgid "Div" 255 | msgstr "" 256 | 257 | #: blocks/build/advanced-levels-page/index.js:1 258 | #: blocks/src/advanced-levels-page/edit.js:39 259 | #: blocks/src/advanced-levels-page/edit.js:40 260 | msgid "Table" 261 | msgstr "" 262 | 263 | #: blocks/build/advanced-levels-page/index.js:1 264 | #: blocks/src/advanced-levels-page/edit.js:40 265 | #: blocks/src/advanced-levels-page/edit.js:41 266 | msgid "2 Columns" 267 | msgstr "" 268 | 269 | #: blocks/build/advanced-levels-page/index.js:1 270 | #: blocks/src/advanced-levels-page/edit.js:41 271 | #: blocks/src/advanced-levels-page/edit.js:42 272 | msgid "3 Columns" 273 | msgstr "" 274 | 275 | #: blocks/build/advanced-levels-page/index.js:1 276 | #: blocks/src/advanced-levels-page/edit.js:42 277 | #: blocks/src/advanced-levels-page/edit.js:43 278 | msgid "4 Columns" 279 | msgstr "" 280 | 281 | #: blocks/build/advanced-levels-page/index.js:1 282 | #: blocks/src/advanced-levels-page/edit.js:43 283 | #: blocks/src/advanced-levels-page/edit.js:44 284 | msgid "Compare Table" 285 | msgstr "" 286 | 287 | #: blocks/build/advanced-levels-page/index.js:1 288 | #: blocks/src/advanced-levels-page/edit.js:47 289 | #: blocks/src/advanced-levels-page/edit.js:48 290 | msgid "Full" 291 | msgstr "" 292 | 293 | #: blocks/build/advanced-levels-page/index.js:1 294 | #: blocks/src/advanced-levels-page/edit.js:48 295 | #: blocks/src/advanced-levels-page/edit.js:49 296 | msgid "Short" 297 | msgstr "" 298 | 299 | #: blocks/build/advanced-levels-page/index.js:1 300 | #: blocks/src/advanced-levels-page/edit.js:49 301 | #: blocks/src/advanced-levels-page/edit.js:50 302 | msgid "Hide" 303 | msgstr "" 304 | 305 | #: blocks/build/advanced-levels-page/index.js:1 306 | #: blocks/src/advanced-levels-page/edit.js:57 307 | #: blocks/src/advanced-levels-page/edit.js:58 308 | msgid "Levels" 309 | msgstr "" 310 | 311 | #: blocks/build/advanced-levels-page/index.js:1 312 | #: blocks/src/advanced-levels-page/edit.js:58 313 | msgid "Enter a comma-separate list of level IDs in the order you would like them to display." 314 | msgstr "" 315 | 316 | #: blocks/build/advanced-levels-page/index.js:1 317 | #: blocks/src/advanced-levels-page/edit.js:67 318 | #: blocks/src/advanced-levels-page/edit.js:68 319 | msgid "Layout" 320 | msgstr "" 321 | 322 | #: blocks/build/advanced-levels-page/index.js:1 323 | #: blocks/src/advanced-levels-page/edit.js:78 324 | #: blocks/src/advanced-levels-page/edit.js:79 325 | msgid "Compare Table Items" 326 | msgstr "" 327 | 328 | #: blocks/build/advanced-levels-page/index.js:1 329 | #: blocks/src/advanced-levels-page/edit.js:79 330 | #: blocks/src/advanced-levels-page/edit.js:80 331 | msgid "Enter groups of comparison rows separated by a semi-colon. For each comparison row, separate the label and each value with a comma (e.g. \"Feature 1,No,Yes,Yes;Feature 2,No,No,Yes\")." 332 | msgstr "" 333 | 334 | #: blocks/build/advanced-levels-page/index.js:1 335 | #: blocks/src/advanced-levels-page/edit.js:90 336 | #: blocks/src/advanced-levels-page/edit.js:91 337 | msgid "Display the level price in your chosen format." 338 | msgstr "" 339 | 340 | #: blocks/build/advanced-levels-page/index.js:1 341 | #: blocks/src/advanced-levels-page/edit.js:100 342 | #: blocks/src/advanced-levels-page/edit.js:101 343 | msgid "Discount Code" 344 | msgstr "" 345 | 346 | #: blocks/build/advanced-levels-page/index.js:1 347 | #: blocks/src/advanced-levels-page/edit.js:101 348 | #: blocks/src/advanced-levels-page/edit.js:102 349 | msgid "Enter a discount code to apply to all applicable levels." 350 | msgstr "" 351 | 352 | #: blocks/build/advanced-levels-page/index.js:1 353 | #: blocks/src/advanced-levels-page/edit.js:110 354 | #: blocks/src/advanced-levels-page/edit.js:111 355 | msgid "Level Description" 356 | msgstr "" 357 | 358 | #: blocks/build/advanced-levels-page/index.js:1 359 | #: blocks/src/advanced-levels-page/edit.js:111 360 | #: blocks/src/advanced-levels-page/edit.js:112 361 | msgid "Display the level description, if defined." 362 | msgstr "" 363 | 364 | #: blocks/build/advanced-levels-page/index.js:1 365 | #: blocks/src/advanced-levels-page/edit.js:120 366 | #: blocks/src/advanced-levels-page/edit.js:121 367 | msgid "Level Expiration" 368 | msgstr "" 369 | 370 | #: blocks/build/advanced-levels-page/index.js:1 371 | #: blocks/src/advanced-levels-page/edit.js:121 372 | #: blocks/src/advanced-levels-page/edit.js:122 373 | msgid "Display the level expiration, if applicable." 374 | msgstr "" 375 | 376 | #: blocks/build/advanced-levels-page/index.js:1 377 | #: blocks/src/advanced-levels-page/edit.js:130 378 | #: blocks/src/advanced-levels-page/edit.js:131 379 | msgid "Checkout Button Label" 380 | msgstr "" 381 | 382 | #: blocks/build/advanced-levels-page/index.js:1 383 | #: blocks/src/advanced-levels-page/edit.js:131 384 | #: blocks/src/advanced-levels-page/edit.js:132 385 | msgid "Enter custom text to change the label of the checkout button." 386 | msgstr "" 387 | 388 | #: blocks/build/advanced-levels-page/index.js:1 389 | #: blocks/src/advanced-levels-page/edit.js:140 390 | #: blocks/src/advanced-levels-page/edit.js:141 391 | msgid "Renew Button" 392 | msgstr "" 393 | 394 | #: blocks/build/advanced-levels-page/index.js:1 395 | #: blocks/src/advanced-levels-page/edit.js:141 396 | #: blocks/src/advanced-levels-page/edit.js:142 397 | msgid "Enter custom text to change the label of the renew button." 398 | msgstr "" 399 | 400 | #: blocks/build/advanced-levels-page/index.js:1 401 | #: blocks/src/advanced-levels-page/edit.js:150 402 | #: blocks/src/advanced-levels-page/edit.js:151 403 | msgid "Back Link" 404 | msgstr "" 405 | 406 | #: blocks/build/advanced-levels-page/index.js:1 407 | #: blocks/src/advanced-levels-page/edit.js:151 408 | #: blocks/src/advanced-levels-page/edit.js:152 409 | msgid "Display a link to the membership account page for current members and the home page for everyone else." 410 | msgstr "" 411 | 412 | #. Plugin Name of the plugin 413 | #: pmpro-advanced-levels-shortcode.php 414 | msgid "Paid Memberships Pro - Advanced Levels Page Add On" 415 | msgstr "" 416 | 417 | #. Description of the plugin 418 | #: pmpro-advanced-levels-shortcode.php 419 | msgid "Build a beautiful membership levels page for Paid Memberships Pro using a customizable block or shortcode." 420 | msgstr "" 421 | 422 | #: blocks/build/advanced-levels-page/index.js:1 423 | #: blocks/src/advanced-levels-page/edit.js:59 424 | msgid "Enter a comma-separated list of level IDs in the order you would like them to display." 425 | msgstr "" 426 | 427 | #: blocks/build/advanced-levels-page/index.js:1 428 | #: blocks/src/advanced-levels-page/edit.js:161 429 | msgid "Highlight" 430 | msgstr "" 431 | 432 | #: blocks/build/advanced-levels-page/index.js:1 433 | #: blocks/src/advanced-levels-page/edit.js:162 434 | msgid "The single level ID to display as the featured level. Use the .pmpro_level-highlight class to add a custom highlight style for your theme." 435 | msgstr "" 436 | -------------------------------------------------------------------------------- /languages/pmpro-advanced-levels-shortcode-es_ES.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2024 Paid Memberships Pro 2 | # This file is distributed under the same license as the Paid Memberships Pro - Advanced Levels Page Add On plugin. 3 | msgid "" 4 | msgstr "" 5 | "Project-Id-Version: Paid Memberships Pro - Advanced Levels Page Add On 1.2\n" 6 | "Report-Msgid-Bugs-To: info@paidmembershipspro.com\n" 7 | "Last-Translator: Paid Memberships Pro \n" 8 | "Language-Team: Paid Memberships Pro \n" 9 | "MIME-Version: 1.0\n" 10 | "Content-Type: text/plain; charset=UTF-8\n" 11 | "Content-Transfer-Encoding: 8bit\n" 12 | "POT-Creation-Date: 2024-07-18T17:25:14+00:00\n" 13 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" 14 | "X-Generator: WP-CLI 2.10.0\n" 15 | "X-Domain: pmpro-advanced-levels-shortcode\n" 16 | 17 | #: pmpro-advanced-levels-shortcode.php:28 18 | #: pmpro-advanced-levels-shortcode.php:73 19 | #: pmpro-advanced-levels-shortcode.php:109 20 | #: pmpro-advanced-levels-shortcode.php:209 21 | #: pmpro-advanced-levels-shortcode.php:207 22 | msgid "View Documentation" 23 | msgstr "Ver documentación" 24 | 25 | #: pmpro-advanced-levels-shortcode.php:28 26 | #: pmpro-advanced-levels-shortcode.php:73 27 | #: pmpro-advanced-levels-shortcode.php:109 28 | #: pmpro-advanced-levels-shortcode.php:209 29 | #: pmpro-advanced-levels-shortcode.php:207 30 | msgid "Docs" 31 | msgstr "Documentación" 32 | 33 | #: pmpro-advanced-levels-shortcode.php:29 34 | #: pmpro-advanced-levels-shortcode.php:74 35 | #: pmpro-advanced-levels-shortcode.php:110 36 | #: pmpro-advanced-levels-shortcode.php:210 37 | #: pmpro-advanced-levels-shortcode.php:208 38 | msgid "Visit Customer Support Forum" 39 | msgstr "Visita foro de soporte" 40 | 41 | #: pmpro-advanced-levels-shortcode.php:29 42 | #: pmpro-advanced-levels-shortcode.php:74 43 | #: pmpro-advanced-levels-shortcode.php:110 44 | #: pmpro-advanced-levels-shortcode.php:210 45 | #: pmpro-advanced-levels-shortcode.php:208 46 | msgid "Support" 47 | msgstr "Soporte" 48 | 49 | #: templates/levels.php:16 50 | #: templates/levels.php:21 51 | #: templates/levels.php:15 52 | msgid "Select" 53 | msgstr "Selecciona" 54 | 55 | #: templates/levels.php:113 56 | #: templates/levels-compare_table.php:10 57 | #: templates/levels-table.php:19 58 | #: templates/levels-compare_table.php:29 59 | #: templates/levels-table.php:16 60 | #: templates/levels-compare_table.php:30 61 | msgid "Level" 62 | msgstr "Nivel" 63 | 64 | #: templates/levels.php:115 65 | #: templates/levels-compare_table.php:25 66 | #: templates/levels-table.php:21 67 | #: templates/levels-compare_table.php:42 68 | #: templates/levels-table.php:18 69 | #: blocks/build/advanced-levels-page/index.js:1 70 | #: blocks/src/advanced-levels-page/edit.js:89 71 | #: templates/levels-compare_table.php:43 72 | #: blocks/src/advanced-levels-page/edit.js:90 73 | msgid "Price" 74 | msgstr "Precio" 75 | 76 | #: templates/levels.php:118 77 | #: templates/levels-compare_table.php:61 78 | #: templates/levels-compare_table.php:237 79 | #: templates/levels-table.php:24 80 | #: templates/levels-compare_table.php:71 81 | #: templates/levels-compare_table.php:249 82 | #: templates/levels-compare_table.php:62 83 | #: templates/levels-compare_table.php:145 84 | #: templates/levels-table.php:21 85 | #: templates/levels-compare_table.php:63 86 | #: templates/levels-compare_table.php:146 87 | msgid "Expiration" 88 | msgstr "Caducidad" 89 | 90 | #: templates/levels.php:156 91 | #: templates/levels.php:335 92 | #: templates/levels.php:523 93 | #: templates/levels.php:623 94 | #: templates/levels-compare_table.php:468 95 | #: templates/levels-div.php:125 96 | #: templates/levels-div.php:321 97 | #: templates/levels-div.php:426 98 | #: templates/levels-table.php:63 99 | #: templates/levels-compare_table.php:478 100 | #: templates/levels-div.php:121 101 | #: templates/levels-div.php:313 102 | #: templates/levels-div.php:418 103 | msgid "Membership Never Expires." 104 | msgstr "La suscripción nunca caduca" 105 | 106 | #: templates/levels.php:191 107 | #: templates/levels.php:375 108 | #: templates/levels.php:446 109 | #: templates/levels.php:587 110 | #: templates/levels.php:30 111 | #: templates/levels.php:24 112 | msgid "Renew" 113 | msgstr "Renovar" 114 | 115 | #: templates/levels.php:203 116 | #: templates/levels.php:387 117 | #: templates/levels.php:458 118 | #: templates/levels.php:599 119 | #: templates/levels.php:17 120 | #: templates/levels.php:12 121 | msgid "Your Level" 122 | msgstr "Tu nivel" 123 | 124 | #: templates/levels.php:305 125 | #: templates/levels.php:486 126 | #: templates/levels-compare_table.php:334 127 | #: templates/levels-div.php:95 128 | #: templates/levels-div.php:282 129 | msgid "Free." 130 | msgstr "Gratis." 131 | 132 | #: templates/levels.php:311 133 | #: templates/levels.php:492 134 | #: templates/levels-compare_table.php:37 135 | #: templates/levels-compare_table.php:43 136 | #: templates/levels-compare_table.php:340 137 | #: templates/levels-div.php:101 138 | #: templates/levels-div.php:288 139 | #: templates/levels-compare_table.php:348 140 | #: templates/levels-div.php:95 141 | #: templates/levels-div.php:278 142 | #: pmpro-advanced-levels-shortcode.php:130 143 | msgid "Free" 144 | msgstr "Gratis" 145 | 146 | #: templates/levels.php:646 147 | #: templates/levels.php:164 148 | #: templates/levels.php:165 149 | #: templates/levels.php:184 150 | #: templates/levels.php:186 151 | #: templates/levels.php:191 152 | msgid "← Return to Your Account" 153 | msgstr "← Regresa a tu cuenta" 154 | 155 | #: templates/levels.php:648 156 | #: templates/levels.php:166 157 | #: templates/levels.php:167 158 | #: templates/levels.php:186 159 | #: templates/levels.php:188 160 | #: templates/levels.php:193 161 | msgid "← Return to Home" 162 | msgstr "← Regresa al inicio" 163 | 164 | #. Plugin Name of the plugin/theme 165 | #. Plugin Name of the plugin 166 | msgid "Paid Memberships Pro - Advanced Levels Page Shortcode Add On" 167 | msgstr "" 168 | 169 | #. Plugin URI of the plugin/theme 170 | msgid "http://www.paidmembershipspro.com/wp/pmpro-advanced-levels/" 171 | msgstr "" 172 | 173 | #. Description of the plugin/theme 174 | #. Description of the plugin 175 | msgid "An enhanced shortcode for customizing the display of your Membership Levels Page for Paid Memberships Pro" 176 | msgstr "" 177 | 178 | #. Author of the plugin/theme 179 | msgid "Stranger Studios" 180 | msgstr "" 181 | 182 | #. Author URI of the plugin/theme 183 | msgid "http://www.strangerstudios.com" 184 | msgstr "" 185 | 186 | #. Plugin URI of the plugin 187 | #: pmpro-advanced-levels-shortcode.php 188 | msgid "https://www.paidmembershipspro.com/add-ons/pmpro-advanced-levels-shortcode/" 189 | msgstr "" 190 | 191 | #. Author of the plugin 192 | #: pmpro-advanced-levels-shortcode.php 193 | msgid "Paid Memberships Pro" 194 | msgstr "" 195 | 196 | #. Author URI of the plugin 197 | #: pmpro-advanced-levels-shortcode.php 198 | msgid "https://www.paidmembershipspro.com/" 199 | msgstr "" 200 | 201 | #: templates/levels-compare_table.php:70 202 | #: templates/levels-compare_table.php:80 203 | #: templates/levels-compare_table.php:68 204 | #: templates/levels-compare_table.php:151 205 | #: templates/levels-compare_table.php:235 206 | #: templates/levels-div.php:50 207 | #: templates/levels-div.php:77 208 | #: templates/levels-table.php:61 209 | #: templates/levels-compare_table.php:69 210 | #: templates/levels-compare_table.php:152 211 | #: templates/levels-compare_table.php:236 212 | #: templates/levels-compare_table.php:253 213 | #: templates/levels-div.php:49 214 | #: templates/levels-div.php:78 215 | #: templates/levels-table.php:63 216 | msgid "Membership never expires." 217 | msgstr "" 218 | 219 | #: templates/levels-compare_table.php:258 220 | #: templates/levels-compare_table.php:270 221 | msgid "More Information" 222 | msgstr "" 223 | 224 | #: templates/levels.php:60 225 | #: templates/levels.php:59 226 | #: templates/levels.php:57 227 | msgid "Read More" 228 | msgstr "" 229 | 230 | #: templates/levels-compare_table.php:56 231 | #: templates/levels-compare_table.php:52 232 | #: templates/levels-compare_table.php:53 233 | msgid "Description" 234 | msgstr "" 235 | 236 | #: templates/levels-compare_table.php:117 237 | #: templates/levels-compare_table.php:118 238 | msgid "Yes" 239 | msgstr "" 240 | 241 | #: templates/levels-compare_table.php:119 242 | #: templates/levels-compare_table.php:120 243 | msgid "No" 244 | msgstr "" 245 | 246 | #: templates/levels.php:126 247 | #: templates/levels.php:127 248 | msgid "Admin-only message: The following level IDs are not shown because they do not exist or signup is disabled: %s" 249 | msgstr "" 250 | 251 | #: blocks/build/advanced-levels-page/index.js:1 252 | #: blocks/src/advanced-levels-page/edit.js:38 253 | #: blocks/src/advanced-levels-page/edit.js:39 254 | msgid "Div" 255 | msgstr "" 256 | 257 | #: blocks/build/advanced-levels-page/index.js:1 258 | #: blocks/src/advanced-levels-page/edit.js:39 259 | #: blocks/src/advanced-levels-page/edit.js:40 260 | msgid "Table" 261 | msgstr "" 262 | 263 | #: blocks/build/advanced-levels-page/index.js:1 264 | #: blocks/src/advanced-levels-page/edit.js:40 265 | #: blocks/src/advanced-levels-page/edit.js:41 266 | msgid "2 Columns" 267 | msgstr "" 268 | 269 | #: blocks/build/advanced-levels-page/index.js:1 270 | #: blocks/src/advanced-levels-page/edit.js:41 271 | #: blocks/src/advanced-levels-page/edit.js:42 272 | msgid "3 Columns" 273 | msgstr "" 274 | 275 | #: blocks/build/advanced-levels-page/index.js:1 276 | #: blocks/src/advanced-levels-page/edit.js:42 277 | #: blocks/src/advanced-levels-page/edit.js:43 278 | msgid "4 Columns" 279 | msgstr "" 280 | 281 | #: blocks/build/advanced-levels-page/index.js:1 282 | #: blocks/src/advanced-levels-page/edit.js:43 283 | #: blocks/src/advanced-levels-page/edit.js:44 284 | msgid "Compare Table" 285 | msgstr "" 286 | 287 | #: blocks/build/advanced-levels-page/index.js:1 288 | #: blocks/src/advanced-levels-page/edit.js:47 289 | #: blocks/src/advanced-levels-page/edit.js:48 290 | msgid "Full" 291 | msgstr "" 292 | 293 | #: blocks/build/advanced-levels-page/index.js:1 294 | #: blocks/src/advanced-levels-page/edit.js:48 295 | #: blocks/src/advanced-levels-page/edit.js:49 296 | msgid "Short" 297 | msgstr "" 298 | 299 | #: blocks/build/advanced-levels-page/index.js:1 300 | #: blocks/src/advanced-levels-page/edit.js:49 301 | #: blocks/src/advanced-levels-page/edit.js:50 302 | msgid "Hide" 303 | msgstr "" 304 | 305 | #: blocks/build/advanced-levels-page/index.js:1 306 | #: blocks/src/advanced-levels-page/edit.js:57 307 | #: blocks/src/advanced-levels-page/edit.js:58 308 | msgid "Levels" 309 | msgstr "" 310 | 311 | #: blocks/build/advanced-levels-page/index.js:1 312 | #: blocks/src/advanced-levels-page/edit.js:58 313 | msgid "Enter a comma-separate list of level IDs in the order you would like them to display." 314 | msgstr "" 315 | 316 | #: blocks/build/advanced-levels-page/index.js:1 317 | #: blocks/src/advanced-levels-page/edit.js:67 318 | #: blocks/src/advanced-levels-page/edit.js:68 319 | msgid "Layout" 320 | msgstr "" 321 | 322 | #: blocks/build/advanced-levels-page/index.js:1 323 | #: blocks/src/advanced-levels-page/edit.js:78 324 | #: blocks/src/advanced-levels-page/edit.js:79 325 | msgid "Compare Table Items" 326 | msgstr "" 327 | 328 | #: blocks/build/advanced-levels-page/index.js:1 329 | #: blocks/src/advanced-levels-page/edit.js:79 330 | #: blocks/src/advanced-levels-page/edit.js:80 331 | msgid "Enter groups of comparison rows separated by a semi-colon. For each comparison row, separate the label and each value with a comma (e.g. \"Feature 1,No,Yes,Yes;Feature 2,No,No,Yes\")." 332 | msgstr "" 333 | 334 | #: blocks/build/advanced-levels-page/index.js:1 335 | #: blocks/src/advanced-levels-page/edit.js:90 336 | #: blocks/src/advanced-levels-page/edit.js:91 337 | msgid "Display the level price in your chosen format." 338 | msgstr "" 339 | 340 | #: blocks/build/advanced-levels-page/index.js:1 341 | #: blocks/src/advanced-levels-page/edit.js:100 342 | #: blocks/src/advanced-levels-page/edit.js:101 343 | msgid "Discount Code" 344 | msgstr "" 345 | 346 | #: blocks/build/advanced-levels-page/index.js:1 347 | #: blocks/src/advanced-levels-page/edit.js:101 348 | #: blocks/src/advanced-levels-page/edit.js:102 349 | msgid "Enter a discount code to apply to all applicable levels." 350 | msgstr "" 351 | 352 | #: blocks/build/advanced-levels-page/index.js:1 353 | #: blocks/src/advanced-levels-page/edit.js:110 354 | #: blocks/src/advanced-levels-page/edit.js:111 355 | msgid "Level Description" 356 | msgstr "" 357 | 358 | #: blocks/build/advanced-levels-page/index.js:1 359 | #: blocks/src/advanced-levels-page/edit.js:111 360 | #: blocks/src/advanced-levels-page/edit.js:112 361 | msgid "Display the level description, if defined." 362 | msgstr "" 363 | 364 | #: blocks/build/advanced-levels-page/index.js:1 365 | #: blocks/src/advanced-levels-page/edit.js:120 366 | #: blocks/src/advanced-levels-page/edit.js:121 367 | msgid "Level Expiration" 368 | msgstr "" 369 | 370 | #: blocks/build/advanced-levels-page/index.js:1 371 | #: blocks/src/advanced-levels-page/edit.js:121 372 | #: blocks/src/advanced-levels-page/edit.js:122 373 | msgid "Display the level expiration, if applicable." 374 | msgstr "" 375 | 376 | #: blocks/build/advanced-levels-page/index.js:1 377 | #: blocks/src/advanced-levels-page/edit.js:130 378 | #: blocks/src/advanced-levels-page/edit.js:131 379 | msgid "Checkout Button Label" 380 | msgstr "" 381 | 382 | #: blocks/build/advanced-levels-page/index.js:1 383 | #: blocks/src/advanced-levels-page/edit.js:131 384 | #: blocks/src/advanced-levels-page/edit.js:132 385 | msgid "Enter custom text to change the label of the checkout button." 386 | msgstr "" 387 | 388 | #: blocks/build/advanced-levels-page/index.js:1 389 | #: blocks/src/advanced-levels-page/edit.js:140 390 | #: blocks/src/advanced-levels-page/edit.js:141 391 | msgid "Renew Button" 392 | msgstr "" 393 | 394 | #: blocks/build/advanced-levels-page/index.js:1 395 | #: blocks/src/advanced-levels-page/edit.js:141 396 | #: blocks/src/advanced-levels-page/edit.js:142 397 | msgid "Enter custom text to change the label of the renew button." 398 | msgstr "" 399 | 400 | #: blocks/build/advanced-levels-page/index.js:1 401 | #: blocks/src/advanced-levels-page/edit.js:150 402 | #: blocks/src/advanced-levels-page/edit.js:151 403 | msgid "Back Link" 404 | msgstr "" 405 | 406 | #: blocks/build/advanced-levels-page/index.js:1 407 | #: blocks/src/advanced-levels-page/edit.js:151 408 | #: blocks/src/advanced-levels-page/edit.js:152 409 | msgid "Display a link to the membership account page for current members and the home page for everyone else." 410 | msgstr "" 411 | 412 | #. Plugin Name of the plugin 413 | #: pmpro-advanced-levels-shortcode.php 414 | msgid "Paid Memberships Pro - Advanced Levels Page Add On" 415 | msgstr "" 416 | 417 | #. Description of the plugin 418 | #: pmpro-advanced-levels-shortcode.php 419 | msgid "Build a beautiful membership levels page for Paid Memberships Pro using a customizable block or shortcode." 420 | msgstr "" 421 | 422 | #: blocks/build/advanced-levels-page/index.js:1 423 | #: blocks/src/advanced-levels-page/edit.js:59 424 | msgid "Enter a comma-separated list of level IDs in the order you would like them to display." 425 | msgstr "" 426 | 427 | #: blocks/build/advanced-levels-page/index.js:1 428 | #: blocks/src/advanced-levels-page/edit.js:161 429 | msgid "Highlight" 430 | msgstr "" 431 | 432 | #: blocks/build/advanced-levels-page/index.js:1 433 | #: blocks/src/advanced-levels-page/edit.js:162 434 | msgid "The single level ID to display as the featured level. Use the .pmpro_level-highlight class to add a custom highlight style for your theme." 435 | msgstr "" 436 | -------------------------------------------------------------------------------- /languages/pmpro-advanced-levels-shortcode-fr_FR.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2024 Paid Memberships Pro 2 | # This file is distributed under the same license as the Paid Memberships Pro - Advanced Levels Page Add On plugin. 3 | msgid "" 4 | msgstr "" 5 | "Project-Id-Version: Paid Memberships Pro - Advanced Levels Page Add On 1.2\n" 6 | "Report-Msgid-Bugs-To: info@paidmembershipspro.com\n" 7 | "Last-Translator: Paid Memberships Pro \n" 8 | "Language-Team: Paid Memberships Pro \n" 9 | "MIME-Version: 1.0\n" 10 | "Content-Type: text/plain; charset=UTF-8\n" 11 | "Content-Transfer-Encoding: 8bit\n" 12 | "POT-Creation-Date: 2024-07-18T17:25:15+00:00\n" 13 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" 14 | "X-Generator: WP-CLI 2.10.0\n" 15 | "X-Domain: pmpro-advanced-levels-shortcode\n" 16 | 17 | #: pmpro-advanced-levels-shortcode.php:28 18 | #: pmpro-advanced-levels-shortcode.php:73 19 | #: pmpro-advanced-levels-shortcode.php:109 20 | #: pmpro-advanced-levels-shortcode.php:209 21 | #: pmpro-advanced-levels-shortcode.php:207 22 | msgid "View Documentation" 23 | msgstr "Voir la documentation" 24 | 25 | #: pmpro-advanced-levels-shortcode.php:28 26 | #: pmpro-advanced-levels-shortcode.php:73 27 | #: pmpro-advanced-levels-shortcode.php:109 28 | #: pmpro-advanced-levels-shortcode.php:209 29 | #: pmpro-advanced-levels-shortcode.php:207 30 | msgid "Docs" 31 | msgstr "Documentation" 32 | 33 | #: pmpro-advanced-levels-shortcode.php:29 34 | #: pmpro-advanced-levels-shortcode.php:74 35 | #: pmpro-advanced-levels-shortcode.php:110 36 | #: pmpro-advanced-levels-shortcode.php:210 37 | #: pmpro-advanced-levels-shortcode.php:208 38 | msgid "Visit Customer Support Forum" 39 | msgstr "Visiter le soutien à l'utilisateur" 40 | 41 | #: pmpro-advanced-levels-shortcode.php:29 42 | #: pmpro-advanced-levels-shortcode.php:74 43 | #: pmpro-advanced-levels-shortcode.php:110 44 | #: pmpro-advanced-levels-shortcode.php:210 45 | #: pmpro-advanced-levels-shortcode.php:208 46 | msgid "Support" 47 | msgstr "Soutien" 48 | 49 | #: templates/levels.php:16 50 | #: templates/levels.php:21 51 | #: templates/levels.php:15 52 | msgid "Select" 53 | msgstr "Sélectionner" 54 | 55 | #: templates/levels.php:113 56 | #: templates/levels-compare_table.php:10 57 | #: templates/levels-table.php:19 58 | #: templates/levels-compare_table.php:29 59 | #: templates/levels-table.php:16 60 | #: templates/levels-compare_table.php:30 61 | msgid "Level" 62 | msgstr "Niveau" 63 | 64 | #: templates/levels.php:115 65 | #: templates/levels-compare_table.php:25 66 | #: templates/levels-table.php:21 67 | #: templates/levels-compare_table.php:42 68 | #: templates/levels-table.php:18 69 | #: blocks/build/advanced-levels-page/index.js:1 70 | #: blocks/src/advanced-levels-page/edit.js:89 71 | #: templates/levels-compare_table.php:43 72 | #: blocks/src/advanced-levels-page/edit.js:90 73 | msgid "Price" 74 | msgstr "Prix" 75 | 76 | #: templates/levels.php:118 77 | #: templates/levels-compare_table.php:61 78 | #: templates/levels-compare_table.php:237 79 | #: templates/levels-table.php:24 80 | #: templates/levels-compare_table.php:71 81 | #: templates/levels-compare_table.php:249 82 | #: templates/levels-compare_table.php:62 83 | #: templates/levels-compare_table.php:145 84 | #: templates/levels-table.php:21 85 | #: templates/levels-compare_table.php:63 86 | #: templates/levels-compare_table.php:146 87 | msgid "Expiration" 88 | msgstr "Expiration" 89 | 90 | #: templates/levels.php:156 91 | #: templates/levels.php:335 92 | #: templates/levels.php:523 93 | #: templates/levels.php:623 94 | #: templates/levels-compare_table.php:468 95 | #: templates/levels-div.php:125 96 | #: templates/levels-div.php:321 97 | #: templates/levels-div.php:426 98 | #: templates/levels-table.php:63 99 | #: templates/levels-compare_table.php:478 100 | #: templates/levels-div.php:121 101 | #: templates/levels-div.php:313 102 | #: templates/levels-div.php:418 103 | msgid "Membership Never Expires." 104 | msgstr "L'adhésion n'expire jamais." 105 | 106 | #: templates/levels.php:191 107 | #: templates/levels.php:375 108 | #: templates/levels.php:446 109 | #: templates/levels.php:587 110 | #: templates/levels.php:30 111 | #: templates/levels.php:24 112 | msgid "Renew" 113 | msgstr "Renouveler" 114 | 115 | #: templates/levels.php:203 116 | #: templates/levels.php:387 117 | #: templates/levels.php:458 118 | #: templates/levels.php:599 119 | #: templates/levels.php:17 120 | #: templates/levels.php:12 121 | msgid "Your Level" 122 | msgstr "Votre niveau" 123 | 124 | #: templates/levels.php:305 125 | #: templates/levels.php:486 126 | #: templates/levels-compare_table.php:334 127 | #: templates/levels-div.php:95 128 | #: templates/levels-div.php:282 129 | msgid "Free." 130 | msgstr "Gratuit." 131 | 132 | #: templates/levels.php:311 133 | #: templates/levels.php:492 134 | #: templates/levels-compare_table.php:37 135 | #: templates/levels-compare_table.php:43 136 | #: templates/levels-compare_table.php:340 137 | #: templates/levels-div.php:101 138 | #: templates/levels-div.php:288 139 | #: templates/levels-compare_table.php:348 140 | #: templates/levels-div.php:95 141 | #: templates/levels-div.php:278 142 | #: pmpro-advanced-levels-shortcode.php:130 143 | msgid "Free" 144 | msgstr "Gratuit" 145 | 146 | #: templates/levels.php:646 147 | #: templates/levels.php:164 148 | #: templates/levels.php:165 149 | #: templates/levels.php:184 150 | #: templates/levels.php:186 151 | #: templates/levels.php:191 152 | msgid "← Return to Your Account" 153 | msgstr "Retourner à votre compte" 154 | 155 | #: templates/levels.php:648 156 | #: templates/levels.php:166 157 | #: templates/levels.php:167 158 | #: templates/levels.php:186 159 | #: templates/levels.php:188 160 | #: templates/levels.php:193 161 | msgid "← Return to Home" 162 | msgstr "← Retour à l'accueil" 163 | 164 | #. Plugin Name of the plugin/theme 165 | #. Plugin Name of the plugin 166 | msgid "Paid Memberships Pro - Advanced Levels Page Shortcode Add On" 167 | msgstr "Paid Memberships Pro - Advanced Levels Page Shortcode Add On" 168 | 169 | #. Plugin URI of the plugin/theme 170 | msgid "http://www.paidmembershipspro.com/wp/pmpro-advanced-levels/" 171 | msgstr "http://www.paidmembershipspro.com/wp/pmpro-advanced-levels/" 172 | 173 | #. Description of the plugin/theme 174 | #. Description of the plugin 175 | msgid "An enhanced shortcode for customizing the display of your Membership Levels Page for Paid Memberships Pro" 176 | msgstr "Un lien court étendu pour personnaliser l'affichage des niveaux d'abonnement pour Paid Memberships Pro" 177 | 178 | #. Author of the plugin/theme 179 | msgid "Stranger Studios" 180 | msgstr "Stanger Studios" 181 | 182 | #. Author URI of the plugin/theme 183 | msgid "http://www.strangerstudios.com" 184 | msgstr "http://www.strangerstudios.com" 185 | 186 | #. Plugin URI of the plugin 187 | #: pmpro-advanced-levels-shortcode.php 188 | msgid "https://www.paidmembershipspro.com/add-ons/pmpro-advanced-levels-shortcode/" 189 | msgstr "" 190 | 191 | #. Author of the plugin 192 | #: pmpro-advanced-levels-shortcode.php 193 | msgid "Paid Memberships Pro" 194 | msgstr "" 195 | 196 | #. Author URI of the plugin 197 | #: pmpro-advanced-levels-shortcode.php 198 | msgid "https://www.paidmembershipspro.com/" 199 | msgstr "" 200 | 201 | #: templates/levels-compare_table.php:70 202 | #: templates/levels-compare_table.php:80 203 | #: templates/levels-compare_table.php:68 204 | #: templates/levels-compare_table.php:151 205 | #: templates/levels-compare_table.php:235 206 | #: templates/levels-div.php:50 207 | #: templates/levels-div.php:77 208 | #: templates/levels-table.php:61 209 | #: templates/levels-compare_table.php:69 210 | #: templates/levels-compare_table.php:152 211 | #: templates/levels-compare_table.php:236 212 | #: templates/levels-compare_table.php:253 213 | #: templates/levels-div.php:49 214 | #: templates/levels-div.php:78 215 | #: templates/levels-table.php:63 216 | msgid "Membership never expires." 217 | msgstr "" 218 | 219 | #: templates/levels-compare_table.php:258 220 | #: templates/levels-compare_table.php:270 221 | msgid "More Information" 222 | msgstr "" 223 | 224 | #: templates/levels.php:60 225 | #: templates/levels.php:59 226 | #: templates/levels.php:57 227 | msgid "Read More" 228 | msgstr "" 229 | 230 | #: templates/levels-compare_table.php:56 231 | #: templates/levels-compare_table.php:52 232 | #: templates/levels-compare_table.php:53 233 | msgid "Description" 234 | msgstr "" 235 | 236 | #: templates/levels-compare_table.php:117 237 | #: templates/levels-compare_table.php:118 238 | msgid "Yes" 239 | msgstr "" 240 | 241 | #: templates/levels-compare_table.php:119 242 | #: templates/levels-compare_table.php:120 243 | msgid "No" 244 | msgstr "" 245 | 246 | #: templates/levels.php:126 247 | #: templates/levels.php:127 248 | msgid "Admin-only message: The following level IDs are not shown because they do not exist or signup is disabled: %s" 249 | msgstr "" 250 | 251 | #: blocks/build/advanced-levels-page/index.js:1 252 | #: blocks/src/advanced-levels-page/edit.js:38 253 | #: blocks/src/advanced-levels-page/edit.js:39 254 | msgid "Div" 255 | msgstr "" 256 | 257 | #: blocks/build/advanced-levels-page/index.js:1 258 | #: blocks/src/advanced-levels-page/edit.js:39 259 | #: blocks/src/advanced-levels-page/edit.js:40 260 | msgid "Table" 261 | msgstr "" 262 | 263 | #: blocks/build/advanced-levels-page/index.js:1 264 | #: blocks/src/advanced-levels-page/edit.js:40 265 | #: blocks/src/advanced-levels-page/edit.js:41 266 | msgid "2 Columns" 267 | msgstr "" 268 | 269 | #: blocks/build/advanced-levels-page/index.js:1 270 | #: blocks/src/advanced-levels-page/edit.js:41 271 | #: blocks/src/advanced-levels-page/edit.js:42 272 | msgid "3 Columns" 273 | msgstr "" 274 | 275 | #: blocks/build/advanced-levels-page/index.js:1 276 | #: blocks/src/advanced-levels-page/edit.js:42 277 | #: blocks/src/advanced-levels-page/edit.js:43 278 | msgid "4 Columns" 279 | msgstr "" 280 | 281 | #: blocks/build/advanced-levels-page/index.js:1 282 | #: blocks/src/advanced-levels-page/edit.js:43 283 | #: blocks/src/advanced-levels-page/edit.js:44 284 | msgid "Compare Table" 285 | msgstr "" 286 | 287 | #: blocks/build/advanced-levels-page/index.js:1 288 | #: blocks/src/advanced-levels-page/edit.js:47 289 | #: blocks/src/advanced-levels-page/edit.js:48 290 | msgid "Full" 291 | msgstr "" 292 | 293 | #: blocks/build/advanced-levels-page/index.js:1 294 | #: blocks/src/advanced-levels-page/edit.js:48 295 | #: blocks/src/advanced-levels-page/edit.js:49 296 | msgid "Short" 297 | msgstr "" 298 | 299 | #: blocks/build/advanced-levels-page/index.js:1 300 | #: blocks/src/advanced-levels-page/edit.js:49 301 | #: blocks/src/advanced-levels-page/edit.js:50 302 | msgid "Hide" 303 | msgstr "" 304 | 305 | #: blocks/build/advanced-levels-page/index.js:1 306 | #: blocks/src/advanced-levels-page/edit.js:57 307 | #: blocks/src/advanced-levels-page/edit.js:58 308 | msgid "Levels" 309 | msgstr "" 310 | 311 | #: blocks/build/advanced-levels-page/index.js:1 312 | #: blocks/src/advanced-levels-page/edit.js:58 313 | msgid "Enter a comma-separate list of level IDs in the order you would like them to display." 314 | msgstr "" 315 | 316 | #: blocks/build/advanced-levels-page/index.js:1 317 | #: blocks/src/advanced-levels-page/edit.js:67 318 | #: blocks/src/advanced-levels-page/edit.js:68 319 | msgid "Layout" 320 | msgstr "" 321 | 322 | #: blocks/build/advanced-levels-page/index.js:1 323 | #: blocks/src/advanced-levels-page/edit.js:78 324 | #: blocks/src/advanced-levels-page/edit.js:79 325 | msgid "Compare Table Items" 326 | msgstr "" 327 | 328 | #: blocks/build/advanced-levels-page/index.js:1 329 | #: blocks/src/advanced-levels-page/edit.js:79 330 | #: blocks/src/advanced-levels-page/edit.js:80 331 | msgid "Enter groups of comparison rows separated by a semi-colon. For each comparison row, separate the label and each value with a comma (e.g. \"Feature 1,No,Yes,Yes;Feature 2,No,No,Yes\")." 332 | msgstr "" 333 | 334 | #: blocks/build/advanced-levels-page/index.js:1 335 | #: blocks/src/advanced-levels-page/edit.js:90 336 | #: blocks/src/advanced-levels-page/edit.js:91 337 | msgid "Display the level price in your chosen format." 338 | msgstr "" 339 | 340 | #: blocks/build/advanced-levels-page/index.js:1 341 | #: blocks/src/advanced-levels-page/edit.js:100 342 | #: blocks/src/advanced-levels-page/edit.js:101 343 | msgid "Discount Code" 344 | msgstr "" 345 | 346 | #: blocks/build/advanced-levels-page/index.js:1 347 | #: blocks/src/advanced-levels-page/edit.js:101 348 | #: blocks/src/advanced-levels-page/edit.js:102 349 | msgid "Enter a discount code to apply to all applicable levels." 350 | msgstr "" 351 | 352 | #: blocks/build/advanced-levels-page/index.js:1 353 | #: blocks/src/advanced-levels-page/edit.js:110 354 | #: blocks/src/advanced-levels-page/edit.js:111 355 | msgid "Level Description" 356 | msgstr "" 357 | 358 | #: blocks/build/advanced-levels-page/index.js:1 359 | #: blocks/src/advanced-levels-page/edit.js:111 360 | #: blocks/src/advanced-levels-page/edit.js:112 361 | msgid "Display the level description, if defined." 362 | msgstr "" 363 | 364 | #: blocks/build/advanced-levels-page/index.js:1 365 | #: blocks/src/advanced-levels-page/edit.js:120 366 | #: blocks/src/advanced-levels-page/edit.js:121 367 | msgid "Level Expiration" 368 | msgstr "" 369 | 370 | #: blocks/build/advanced-levels-page/index.js:1 371 | #: blocks/src/advanced-levels-page/edit.js:121 372 | #: blocks/src/advanced-levels-page/edit.js:122 373 | msgid "Display the level expiration, if applicable." 374 | msgstr "" 375 | 376 | #: blocks/build/advanced-levels-page/index.js:1 377 | #: blocks/src/advanced-levels-page/edit.js:130 378 | #: blocks/src/advanced-levels-page/edit.js:131 379 | msgid "Checkout Button Label" 380 | msgstr "" 381 | 382 | #: blocks/build/advanced-levels-page/index.js:1 383 | #: blocks/src/advanced-levels-page/edit.js:131 384 | #: blocks/src/advanced-levels-page/edit.js:132 385 | msgid "Enter custom text to change the label of the checkout button." 386 | msgstr "" 387 | 388 | #: blocks/build/advanced-levels-page/index.js:1 389 | #: blocks/src/advanced-levels-page/edit.js:140 390 | #: blocks/src/advanced-levels-page/edit.js:141 391 | msgid "Renew Button" 392 | msgstr "" 393 | 394 | #: blocks/build/advanced-levels-page/index.js:1 395 | #: blocks/src/advanced-levels-page/edit.js:141 396 | #: blocks/src/advanced-levels-page/edit.js:142 397 | msgid "Enter custom text to change the label of the renew button." 398 | msgstr "" 399 | 400 | #: blocks/build/advanced-levels-page/index.js:1 401 | #: blocks/src/advanced-levels-page/edit.js:150 402 | #: blocks/src/advanced-levels-page/edit.js:151 403 | msgid "Back Link" 404 | msgstr "" 405 | 406 | #: blocks/build/advanced-levels-page/index.js:1 407 | #: blocks/src/advanced-levels-page/edit.js:151 408 | #: blocks/src/advanced-levels-page/edit.js:152 409 | msgid "Display a link to the membership account page for current members and the home page for everyone else." 410 | msgstr "" 411 | 412 | #. Plugin Name of the plugin 413 | #: pmpro-advanced-levels-shortcode.php 414 | msgid "Paid Memberships Pro - Advanced Levels Page Add On" 415 | msgstr "" 416 | 417 | #. Description of the plugin 418 | #: pmpro-advanced-levels-shortcode.php 419 | msgid "Build a beautiful membership levels page for Paid Memberships Pro using a customizable block or shortcode." 420 | msgstr "" 421 | 422 | #: blocks/build/advanced-levels-page/index.js:1 423 | #: blocks/src/advanced-levels-page/edit.js:59 424 | msgid "Enter a comma-separated list of level IDs in the order you would like them to display." 425 | msgstr "" 426 | 427 | #: blocks/build/advanced-levels-page/index.js:1 428 | #: blocks/src/advanced-levels-page/edit.js:161 429 | msgid "Highlight" 430 | msgstr "" 431 | 432 | #: blocks/build/advanced-levels-page/index.js:1 433 | #: blocks/src/advanced-levels-page/edit.js:162 434 | msgid "The single level ID to display as the featured level. Use the .pmpro_level-highlight class to add a custom highlight style for your theme." 435 | msgstr "" 436 | -------------------------------------------------------------------------------- /languages/pmpro-advanced-levels-shortcode-nb_NO.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2024 Paid Memberships Pro 2 | # This file is distributed under the same license as the Paid Memberships Pro - Advanced Levels Page Add On plugin. 3 | msgid "" 4 | msgstr "" 5 | "Project-Id-Version: Paid Memberships Pro - Advanced Levels Page Add On 1.2\n" 6 | "Report-Msgid-Bugs-To: info@paidmembershipspro.com\n" 7 | "Last-Translator: Paid Memberships Pro \n" 8 | "Language-Team: Paid Memberships Pro \n" 9 | "MIME-Version: 1.0\n" 10 | "Content-Type: text/plain; charset=UTF-8\n" 11 | "Content-Transfer-Encoding: 8bit\n" 12 | "POT-Creation-Date: 2024-07-18T17:25:15+00:00\n" 13 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" 14 | "X-Generator: WP-CLI 2.10.0\n" 15 | "X-Domain: pmpro-advanced-levels-shortcode\n" 16 | 17 | #: pmpro-advanced-levels-shortcode.php:28 18 | #: pmpro-advanced-levels-shortcode.php:73 19 | #: pmpro-advanced-levels-shortcode.php:109 20 | #: pmpro-advanced-levels-shortcode.php:209 21 | #: pmpro-advanced-levels-shortcode.php:207 22 | msgid "View Documentation" 23 | msgstr "Vis dokumentasjon" 24 | 25 | #: pmpro-advanced-levels-shortcode.php:28 26 | #: pmpro-advanced-levels-shortcode.php:73 27 | #: pmpro-advanced-levels-shortcode.php:109 28 | #: pmpro-advanced-levels-shortcode.php:209 29 | #: pmpro-advanced-levels-shortcode.php:207 30 | msgid "Docs" 31 | msgstr "Documentasjon" 32 | 33 | #: pmpro-advanced-levels-shortcode.php:29 34 | #: pmpro-advanced-levels-shortcode.php:74 35 | #: pmpro-advanced-levels-shortcode.php:110 36 | #: pmpro-advanced-levels-shortcode.php:210 37 | #: pmpro-advanced-levels-shortcode.php:208 38 | msgid "Visit Customer Support Forum" 39 | msgstr "Besøk brukerstøtte forumet" 40 | 41 | #: pmpro-advanced-levels-shortcode.php:29 42 | #: pmpro-advanced-levels-shortcode.php:74 43 | #: pmpro-advanced-levels-shortcode.php:110 44 | #: pmpro-advanced-levels-shortcode.php:210 45 | #: pmpro-advanced-levels-shortcode.php:208 46 | msgid "Support" 47 | msgstr "Brukerstøtte" 48 | 49 | #: templates/levels.php:16 50 | #: templates/levels.php:21 51 | #: templates/levels.php:15 52 | msgid "Select" 53 | msgstr "Velg" 54 | 55 | #: templates/levels.php:113 56 | #: templates/levels-compare_table.php:10 57 | #: templates/levels-table.php:19 58 | #: templates/levels-compare_table.php:29 59 | #: templates/levels-table.php:16 60 | #: templates/levels-compare_table.php:30 61 | msgid "Level" 62 | msgstr "Nivå" 63 | 64 | #: templates/levels.php:115 65 | #: templates/levels-compare_table.php:25 66 | #: templates/levels-table.php:21 67 | #: templates/levels-compare_table.php:42 68 | #: templates/levels-table.php:18 69 | #: blocks/build/advanced-levels-page/index.js:1 70 | #: blocks/src/advanced-levels-page/edit.js:89 71 | #: templates/levels-compare_table.php:43 72 | #: blocks/src/advanced-levels-page/edit.js:90 73 | msgid "Price" 74 | msgstr "Pris" 75 | 76 | #: templates/levels.php:118 77 | #: templates/levels-compare_table.php:61 78 | #: templates/levels-compare_table.php:237 79 | #: templates/levels-table.php:24 80 | #: templates/levels-compare_table.php:71 81 | #: templates/levels-compare_table.php:249 82 | #: templates/levels-compare_table.php:62 83 | #: templates/levels-compare_table.php:145 84 | #: templates/levels-table.php:21 85 | #: templates/levels-compare_table.php:63 86 | #: templates/levels-compare_table.php:146 87 | msgid "Expiration" 88 | msgstr "Utløpsdato" 89 | 90 | #: templates/levels.php:156 91 | #: templates/levels.php:335 92 | #: templates/levels.php:523 93 | #: templates/levels.php:623 94 | #: templates/levels-compare_table.php:468 95 | #: templates/levels-div.php:125 96 | #: templates/levels-div.php:321 97 | #: templates/levels-div.php:426 98 | #: templates/levels-table.php:63 99 | #: templates/levels-compare_table.php:478 100 | #: templates/levels-div.php:121 101 | #: templates/levels-div.php:313 102 | #: templates/levels-div.php:418 103 | msgid "Membership Never Expires." 104 | msgstr "Medlemskapet utløper aldri" 105 | 106 | #: templates/levels.php:191 107 | #: templates/levels.php:375 108 | #: templates/levels.php:446 109 | #: templates/levels.php:587 110 | #: templates/levels.php:30 111 | #: templates/levels.php:24 112 | msgid "Renew" 113 | msgstr "Forny" 114 | 115 | #: templates/levels.php:203 116 | #: templates/levels.php:387 117 | #: templates/levels.php:458 118 | #: templates/levels.php:599 119 | #: templates/levels.php:17 120 | #: templates/levels.php:12 121 | msgid "Your Level" 122 | msgstr "Ditt medlemsnivå" 123 | 124 | #: templates/levels.php:305 125 | #: templates/levels.php:486 126 | #: templates/levels-compare_table.php:334 127 | #: templates/levels-div.php:95 128 | #: templates/levels-div.php:282 129 | msgid "Free." 130 | msgstr "Gratis" 131 | 132 | #: templates/levels.php:311 133 | #: templates/levels.php:492 134 | #: templates/levels-compare_table.php:37 135 | #: templates/levels-compare_table.php:43 136 | #: templates/levels-compare_table.php:340 137 | #: templates/levels-div.php:101 138 | #: templates/levels-div.php:288 139 | #: templates/levels-compare_table.php:348 140 | #: templates/levels-div.php:95 141 | #: templates/levels-div.php:278 142 | #: pmpro-advanced-levels-shortcode.php:130 143 | msgid "Free" 144 | msgstr "Gratis" 145 | 146 | #: templates/levels.php:646 147 | #: templates/levels.php:164 148 | #: templates/levels.php:165 149 | #: templates/levels.php:184 150 | #: templates/levels.php:186 151 | #: templates/levels.php:191 152 | msgid "← Return to Your Account" 153 | msgstr "← Tilbake til brukerkontoen din" 154 | 155 | #: templates/levels.php:648 156 | #: templates/levels.php:166 157 | #: templates/levels.php:167 158 | #: templates/levels.php:186 159 | #: templates/levels.php:188 160 | #: templates/levels.php:193 161 | msgid "← Return to Home" 162 | msgstr "← Til hjemmesiden" 163 | 164 | #. Plugin Name of the plugin/theme 165 | #. Plugin Name of the plugin 166 | msgid "Paid Memberships Pro - Advanced Levels Page Shortcode Add On" 167 | msgstr "Paid Memberships Pro - Advanced Levels Page Shortcode Add On" 168 | 169 | #. Plugin URI of the plugin/theme 170 | msgid "http://www.paidmembershipspro.com/wp/pmpro-advanced-levels/" 171 | msgstr "http://www.paidmembershipspro.com/wp/pmpro-advanced-levels/" 172 | 173 | #. Description of the plugin/theme 174 | #. Description of the plugin 175 | msgid "An enhanced shortcode for customizing the display of your Membership Levels Page for Paid Memberships Pro" 176 | msgstr "En utvidet kortkodefunksjon for å kunne tilpasse hvordan siden med medlemsnivåene vises for Paid Memberships Pro" 177 | 178 | #. Author of the plugin/theme 179 | msgid "Stranger Studios" 180 | msgstr "Stranger Studios" 181 | 182 | #. Author URI of the plugin/theme 183 | msgid "http://www.strangerstudios.com" 184 | msgstr "http://www.strangerstudios.com" 185 | 186 | #. Plugin URI of the plugin 187 | #: pmpro-advanced-levels-shortcode.php 188 | msgid "https://www.paidmembershipspro.com/add-ons/pmpro-advanced-levels-shortcode/" 189 | msgstr "" 190 | 191 | #. Author of the plugin 192 | #: pmpro-advanced-levels-shortcode.php 193 | msgid "Paid Memberships Pro" 194 | msgstr "" 195 | 196 | #. Author URI of the plugin 197 | #: pmpro-advanced-levels-shortcode.php 198 | msgid "https://www.paidmembershipspro.com/" 199 | msgstr "" 200 | 201 | #: templates/levels-compare_table.php:70 202 | #: templates/levels-compare_table.php:80 203 | #: templates/levels-compare_table.php:68 204 | #: templates/levels-compare_table.php:151 205 | #: templates/levels-compare_table.php:235 206 | #: templates/levels-div.php:50 207 | #: templates/levels-div.php:77 208 | #: templates/levels-table.php:61 209 | #: templates/levels-compare_table.php:69 210 | #: templates/levels-compare_table.php:152 211 | #: templates/levels-compare_table.php:236 212 | #: templates/levels-compare_table.php:253 213 | #: templates/levels-div.php:49 214 | #: templates/levels-div.php:78 215 | #: templates/levels-table.php:63 216 | msgid "Membership never expires." 217 | msgstr "" 218 | 219 | #: templates/levels-compare_table.php:258 220 | #: templates/levels-compare_table.php:270 221 | msgid "More Information" 222 | msgstr "" 223 | 224 | #: templates/levels.php:60 225 | #: templates/levels.php:59 226 | #: templates/levels.php:57 227 | msgid "Read More" 228 | msgstr "" 229 | 230 | #: templates/levels-compare_table.php:56 231 | #: templates/levels-compare_table.php:52 232 | #: templates/levels-compare_table.php:53 233 | msgid "Description" 234 | msgstr "" 235 | 236 | #: templates/levels-compare_table.php:117 237 | #: templates/levels-compare_table.php:118 238 | msgid "Yes" 239 | msgstr "" 240 | 241 | #: templates/levels-compare_table.php:119 242 | #: templates/levels-compare_table.php:120 243 | msgid "No" 244 | msgstr "" 245 | 246 | #: templates/levels.php:126 247 | #: templates/levels.php:127 248 | msgid "Admin-only message: The following level IDs are not shown because they do not exist or signup is disabled: %s" 249 | msgstr "" 250 | 251 | #: blocks/build/advanced-levels-page/index.js:1 252 | #: blocks/src/advanced-levels-page/edit.js:38 253 | #: blocks/src/advanced-levels-page/edit.js:39 254 | msgid "Div" 255 | msgstr "" 256 | 257 | #: blocks/build/advanced-levels-page/index.js:1 258 | #: blocks/src/advanced-levels-page/edit.js:39 259 | #: blocks/src/advanced-levels-page/edit.js:40 260 | msgid "Table" 261 | msgstr "" 262 | 263 | #: blocks/build/advanced-levels-page/index.js:1 264 | #: blocks/src/advanced-levels-page/edit.js:40 265 | #: blocks/src/advanced-levels-page/edit.js:41 266 | msgid "2 Columns" 267 | msgstr "" 268 | 269 | #: blocks/build/advanced-levels-page/index.js:1 270 | #: blocks/src/advanced-levels-page/edit.js:41 271 | #: blocks/src/advanced-levels-page/edit.js:42 272 | msgid "3 Columns" 273 | msgstr "" 274 | 275 | #: blocks/build/advanced-levels-page/index.js:1 276 | #: blocks/src/advanced-levels-page/edit.js:42 277 | #: blocks/src/advanced-levels-page/edit.js:43 278 | msgid "4 Columns" 279 | msgstr "" 280 | 281 | #: blocks/build/advanced-levels-page/index.js:1 282 | #: blocks/src/advanced-levels-page/edit.js:43 283 | #: blocks/src/advanced-levels-page/edit.js:44 284 | msgid "Compare Table" 285 | msgstr "" 286 | 287 | #: blocks/build/advanced-levels-page/index.js:1 288 | #: blocks/src/advanced-levels-page/edit.js:47 289 | #: blocks/src/advanced-levels-page/edit.js:48 290 | msgid "Full" 291 | msgstr "" 292 | 293 | #: blocks/build/advanced-levels-page/index.js:1 294 | #: blocks/src/advanced-levels-page/edit.js:48 295 | #: blocks/src/advanced-levels-page/edit.js:49 296 | msgid "Short" 297 | msgstr "" 298 | 299 | #: blocks/build/advanced-levels-page/index.js:1 300 | #: blocks/src/advanced-levels-page/edit.js:49 301 | #: blocks/src/advanced-levels-page/edit.js:50 302 | msgid "Hide" 303 | msgstr "" 304 | 305 | #: blocks/build/advanced-levels-page/index.js:1 306 | #: blocks/src/advanced-levels-page/edit.js:57 307 | #: blocks/src/advanced-levels-page/edit.js:58 308 | msgid "Levels" 309 | msgstr "" 310 | 311 | #: blocks/build/advanced-levels-page/index.js:1 312 | #: blocks/src/advanced-levels-page/edit.js:58 313 | msgid "Enter a comma-separate list of level IDs in the order you would like them to display." 314 | msgstr "" 315 | 316 | #: blocks/build/advanced-levels-page/index.js:1 317 | #: blocks/src/advanced-levels-page/edit.js:67 318 | #: blocks/src/advanced-levels-page/edit.js:68 319 | msgid "Layout" 320 | msgstr "" 321 | 322 | #: blocks/build/advanced-levels-page/index.js:1 323 | #: blocks/src/advanced-levels-page/edit.js:78 324 | #: blocks/src/advanced-levels-page/edit.js:79 325 | msgid "Compare Table Items" 326 | msgstr "" 327 | 328 | #: blocks/build/advanced-levels-page/index.js:1 329 | #: blocks/src/advanced-levels-page/edit.js:79 330 | #: blocks/src/advanced-levels-page/edit.js:80 331 | msgid "Enter groups of comparison rows separated by a semi-colon. For each comparison row, separate the label and each value with a comma (e.g. \"Feature 1,No,Yes,Yes;Feature 2,No,No,Yes\")." 332 | msgstr "" 333 | 334 | #: blocks/build/advanced-levels-page/index.js:1 335 | #: blocks/src/advanced-levels-page/edit.js:90 336 | #: blocks/src/advanced-levels-page/edit.js:91 337 | msgid "Display the level price in your chosen format." 338 | msgstr "" 339 | 340 | #: blocks/build/advanced-levels-page/index.js:1 341 | #: blocks/src/advanced-levels-page/edit.js:100 342 | #: blocks/src/advanced-levels-page/edit.js:101 343 | msgid "Discount Code" 344 | msgstr "" 345 | 346 | #: blocks/build/advanced-levels-page/index.js:1 347 | #: blocks/src/advanced-levels-page/edit.js:101 348 | #: blocks/src/advanced-levels-page/edit.js:102 349 | msgid "Enter a discount code to apply to all applicable levels." 350 | msgstr "" 351 | 352 | #: blocks/build/advanced-levels-page/index.js:1 353 | #: blocks/src/advanced-levels-page/edit.js:110 354 | #: blocks/src/advanced-levels-page/edit.js:111 355 | msgid "Level Description" 356 | msgstr "" 357 | 358 | #: blocks/build/advanced-levels-page/index.js:1 359 | #: blocks/src/advanced-levels-page/edit.js:111 360 | #: blocks/src/advanced-levels-page/edit.js:112 361 | msgid "Display the level description, if defined." 362 | msgstr "" 363 | 364 | #: blocks/build/advanced-levels-page/index.js:1 365 | #: blocks/src/advanced-levels-page/edit.js:120 366 | #: blocks/src/advanced-levels-page/edit.js:121 367 | msgid "Level Expiration" 368 | msgstr "" 369 | 370 | #: blocks/build/advanced-levels-page/index.js:1 371 | #: blocks/src/advanced-levels-page/edit.js:121 372 | #: blocks/src/advanced-levels-page/edit.js:122 373 | msgid "Display the level expiration, if applicable." 374 | msgstr "" 375 | 376 | #: blocks/build/advanced-levels-page/index.js:1 377 | #: blocks/src/advanced-levels-page/edit.js:130 378 | #: blocks/src/advanced-levels-page/edit.js:131 379 | msgid "Checkout Button Label" 380 | msgstr "" 381 | 382 | #: blocks/build/advanced-levels-page/index.js:1 383 | #: blocks/src/advanced-levels-page/edit.js:131 384 | #: blocks/src/advanced-levels-page/edit.js:132 385 | msgid "Enter custom text to change the label of the checkout button." 386 | msgstr "" 387 | 388 | #: blocks/build/advanced-levels-page/index.js:1 389 | #: blocks/src/advanced-levels-page/edit.js:140 390 | #: blocks/src/advanced-levels-page/edit.js:141 391 | msgid "Renew Button" 392 | msgstr "" 393 | 394 | #: blocks/build/advanced-levels-page/index.js:1 395 | #: blocks/src/advanced-levels-page/edit.js:141 396 | #: blocks/src/advanced-levels-page/edit.js:142 397 | msgid "Enter custom text to change the label of the renew button." 398 | msgstr "" 399 | 400 | #: blocks/build/advanced-levels-page/index.js:1 401 | #: blocks/src/advanced-levels-page/edit.js:150 402 | #: blocks/src/advanced-levels-page/edit.js:151 403 | msgid "Back Link" 404 | msgstr "" 405 | 406 | #: blocks/build/advanced-levels-page/index.js:1 407 | #: blocks/src/advanced-levels-page/edit.js:151 408 | #: blocks/src/advanced-levels-page/edit.js:152 409 | msgid "Display a link to the membership account page for current members and the home page for everyone else." 410 | msgstr "" 411 | 412 | #. Plugin Name of the plugin 413 | #: pmpro-advanced-levels-shortcode.php 414 | msgid "Paid Memberships Pro - Advanced Levels Page Add On" 415 | msgstr "" 416 | 417 | #. Description of the plugin 418 | #: pmpro-advanced-levels-shortcode.php 419 | msgid "Build a beautiful membership levels page for Paid Memberships Pro using a customizable block or shortcode." 420 | msgstr "" 421 | 422 | #: blocks/build/advanced-levels-page/index.js:1 423 | #: blocks/src/advanced-levels-page/edit.js:59 424 | msgid "Enter a comma-separated list of level IDs in the order you would like them to display." 425 | msgstr "" 426 | 427 | #: blocks/build/advanced-levels-page/index.js:1 428 | #: blocks/src/advanced-levels-page/edit.js:161 429 | msgid "Highlight" 430 | msgstr "" 431 | 432 | #: blocks/build/advanced-levels-page/index.js:1 433 | #: blocks/src/advanced-levels-page/edit.js:162 434 | msgid "The single level ID to display as the featured level. Use the .pmpro_level-highlight class to add a custom highlight style for your theme." 435 | msgstr "" 436 | --------------------------------------------------------------------------------