Theme My Login - Version 7.0.2

Version Description

  • Fix collision with some plugins which modify the nav menu edit walker
  • Fix a notice in multisite
  • Fix pages not using custom templates when used as TML actions
  • Fix shortcode not working in certain circumstances when no action is present
Download this release

Release Info

Developer jfarthing84
Plugin Icon 128x128 Theme My Login
Version 7.0.2
Comparing to
See all releases

Code changes from version 7.0.1 to 7.0.2

admin/class-theme-my-login-walker-nav-menu-edit.php CHANGED
@@ -32,14 +32,14 @@ class Theme_My_Login_Walker_Nav_Menu_Edit extends Walker_Nav_Menu_Edit {
32
  /**
33
  * Fires just before the move field of a nav menu item in the menu editor.
34
  *
35
- * @since 7.0
36
  *
37
- * @param object $item The nav menu item.
38
- * @param int $depth The current walker depth.
39
- * @param array $args An array of arguments for walking the tree.
40
- * @param int $id The nav menu ID.
41
  */
42
- do_action( 'tml_nav_menu_item_custom_fields', $item, $depth, $args, $id );
43
 
44
  // Get the contents of the output buffer
45
  $custom_fields = ob_get_clean();
32
  /**
33
  * Fires just before the move field of a nav menu item in the menu editor.
34
  *
35
+ * @since unknown
36
  *
37
+ * @param int $item_id The item ID.
38
+ * @param object $item The nav menu item.
39
+ * @param int $depth The current walker depth.
40
+ * @param array $args An array of arguments for walking the tree.
41
  */
42
+ do_action( 'wp_nav_menu_item_custom_fields', $item->ID, $item, $depth, $args );
43
 
44
  // Get the contents of the output buffer
45
  $custom_fields = ob_get_clean();
includes/functions.php CHANGED
@@ -97,13 +97,13 @@ function tml_parse_query( $wp_query ) {
97
  */
98
  function tml_the_posts( $posts, $wp_query ) {
99
 
100
- // Bail if not handling a TML action
101
- if ( ! tml_is_action() ) {
102
  return $posts;
103
  }
104
 
105
- // Bail if not in the main loop
106
- if ( ! $wp_query->is_main_query() ) {
107
  return $posts;
108
  }
109
 
@@ -140,14 +140,7 @@ function tml_page_template( $template = 'page.php' ) {
140
 
141
  $slug = $action->get_name();
142
 
143
- /**
144
- * Filters the template hierarchy used for TML pages.
145
- *
146
- * @since 7.0
147
- *
148
- * @param array $templates The page template hierarchy.
149
- */
150
- $templates = apply_filters( 'tml_page_templates', array(
151
  "$slug.php",
152
  "theme-my-login-$slug.php",
153
  "tml-$slug.php",
@@ -155,7 +148,23 @@ function tml_page_template( $template = 'page.php' ) {
155
  'theme-my-login.php',
156
  'tml.php',
157
  'page.php',
158
- ) );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
159
 
160
  if ( $tml_template = locate_template( $templates ) ) {
161
  return $tml_template;
97
  */
98
  function tml_the_posts( $posts, $wp_query ) {
99
 
100
+ // Bail if not in the main loop
101
+ if ( ! $wp_query->is_main_query() ) {
102
  return $posts;
103
  }
104
 
105
+ // Bail if not handling a TML action
106
+ if ( ! tml_is_action() ) {
107
  return $posts;
108
  }
109
 
140
 
141
  $slug = $action->get_name();
142
 
143
+ $templates = array(
 
 
 
 
 
 
 
144
  "$slug.php",
145
  "theme-my-login-$slug.php",
146
  "tml-$slug.php",
148
  'theme-my-login.php',
149
  'tml.php',
150
  'page.php',
151
+ );
152
+
153
+ if ( tml_action_has_page() ) {
154
+ $template = get_page_template_slug();
155
+ if ( $template && 0 === validate_file( $template ) ) {
156
+ array_unshift( $templates, $template );
157
+ }
158
+ }
159
+
160
+ /**
161
+ * Filters the template hierarchy used for TML pages.
162
+ *
163
+ * @since 7.0
164
+ *
165
+ * @param array $templates The page template hierarchy.
166
+ */
167
+ $templates = apply_filters( 'tml_page_templates', $templates );
168
 
169
  if ( $tml_template = locate_template( $templates ) ) {
170
  return $tml_template;
includes/ms-functions.php CHANGED
@@ -225,10 +225,10 @@ function tml_ms_add_blog_signup_form_fields( $form ) {
225
  $current_network = get_network();
226
 
227
  if ( ! is_subdomain_install() ) {
228
- $blogname_after = '<br />';
229
  if ( ! is_user_logged_in() ) {
230
- $blogname_after .= '<p>(<strong>' . sprintf( __( 'Your address will be %s.' ), $current_network->domain . $current_network->path . __( 'sitename' ) ) . '</strong>) ';
231
- $blogname_after .= __( 'Must be at least 4 characters, letters and numbers only. It cannot be changed, so choose carefully!' ) . '</p>';
232
  }
233
 
234
  tml_add_form_field( $form, 'blogname', array(
@@ -242,14 +242,14 @@ function tml_ms_add_blog_signup_form_fields( $form ) {
242
  'priority' => 10,
243
  'render_args' => array(
244
  'control_before' => '<span class="prefix_address">' . $current_network->domain . $current_network->path . '</span>',
245
- 'control_after' => $blogname_after,
246
  ),
247
  ) );
248
  } else {
249
- $blogname_after = '<span class="suffix_address">.' . ( $site_domain = preg_replace( '|^www\.|', '', $current_network->domain ) ) . '</span><br />';
250
  if ( ! is_user_logged_in() ) {
251
- $blogname_after .= '<p>(<strong>' . sprintf( __( 'Your address will be %s.' ), __( 'domain' ) . '.' . $site_domain . $current_network->path ) . '</strong>) ';
252
- $blogname_after .= __( 'Must be at least 4 characters, letters and numbers only. It cannot be changed, so choose carefully!' ) . '</p>';
253
  }
254
 
255
  tml_add_form_field( $form, 'blogname', array(
225
  $current_network = get_network();
226
 
227
  if ( ! is_subdomain_install() ) {
228
+ $control_after = '<br />';
229
  if ( ! is_user_logged_in() ) {
230
+ $control_after .= '<p>(<strong>' . sprintf( __( 'Your address will be %s.' ), $current_network->domain . $current_network->path . __( 'sitename' ) ) . '</strong>) ';
231
+ $control_after .= __( 'Must be at least 4 characters, letters and numbers only. It cannot be changed, so choose carefully!' ) . '</p>';
232
  }
233
 
234
  tml_add_form_field( $form, 'blogname', array(
242
  'priority' => 10,
243
  'render_args' => array(
244
  'control_before' => '<span class="prefix_address">' . $current_network->domain . $current_network->path . '</span>',
245
+ 'control_after' => $control_after,
246
  ),
247
  ) );
248
  } else {
249
+ $control_after = '<span class="suffix_address">.' . ( $site_domain = preg_replace( '|^www\.|', '', $current_network->domain ) ) . '</span><br />';
250
  if ( ! is_user_logged_in() ) {
251
+ $control_after .= '<p>(<strong>' . sprintf( __( 'Your address will be %s.' ), __( 'domain' ) . '.' . $site_domain . $current_network->path ) . '</strong>) ';
252
+ $control_after .= __( 'Must be at least 4 characters, letters and numbers only. It cannot be changed, so choose carefully!' ) . '</p>';
253
  }
254
 
255
  tml_add_form_field( $form, 'blogname', array(
includes/shortcodes.php CHANGED
@@ -36,8 +36,8 @@ function tml_shortcode( $atts = array() ) {
36
 
37
  $content = '';
38
 
39
- if ( empty( $atts['action'] ) && tml_is_action() ) {
40
- $action = tml_get_action();
41
  } elseif ( ! $action = tml_get_action( $atts['action'] ) ) {
42
  return $content;
43
  }
36
 
37
  $content = '';
38
 
39
+ if ( empty( $atts['action'] ) ) {
40
+ $action = tml_is_action() ? tml_get_action() : tml_get_action( 'login' );
41
  } elseif ( ! $action = tml_get_action( $atts['action'] ) ) {
42
  return $content;
43
  }
languages/theme-my-login.pot CHANGED
@@ -2,33 +2,33 @@
2
  # This file is distributed under the same license as the Theme My Login package.
3
  msgid ""
4
  msgstr ""
5
- "Project-Id-Version: Theme My Login 7.0.1\n"
6
  "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/theme-my-login\n"
7
  "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
8
  "Language-Team: LANGUAGE <LL@li.org>\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: 2018-06-13T14:33:07-04:00\n"
13
- "PO-Revision-Date: 2018-06-13T14:33:07-04:00\n"
14
  "X-Domain: theme-my-login\n"
15
 
16
- #: includes/functions.php:396
17
  #: admin/functions.php:223
18
  msgid "Theme My Login Actions"
19
  msgstr ""
20
 
21
- #: includes/functions.php:397
22
  msgid "Theme My Login Action"
23
  msgstr ""
24
 
25
- #: includes/functions.php:425
26
- #: includes/functions.php:452
27
- #: includes/functions.php:467
28
  msgid "TML Action"
29
  msgstr ""
30
 
31
- #: includes/functions.php:551
32
  msgid "If you have already set your own password, you may disregard this email and use the password you have already set."
33
  msgstr ""
34
 
2
  # This file is distributed under the same license as the Theme My Login package.
3
  msgid ""
4
  msgstr ""
5
+ "Project-Id-Version: Theme My Login 7.0.2\n"
6
  "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/theme-my-login\n"
7
  "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
8
  "Language-Team: LANGUAGE <LL@li.org>\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: 2018-06-14T18:48:25-04:00\n"
13
+ "PO-Revision-Date: 2018-06-14T18:48:25-04:00\n"
14
  "X-Domain: theme-my-login\n"
15
 
16
+ #: includes/functions.php:405
17
  #: admin/functions.php:223
18
  msgid "Theme My Login Actions"
19
  msgstr ""
20
 
21
+ #: includes/functions.php:406
22
  msgid "Theme My Login Action"
23
  msgstr ""
24
 
25
+ #: includes/functions.php:434
26
+ #: includes/functions.php:461
27
+ #: includes/functions.php:476
28
  msgid "TML Action"
29
  msgstr ""
30
 
31
+ #: includes/functions.php:560
32
  msgid "If you have already set your own password, you may disregard this email and use the password you have already set."
33
  msgstr ""
34
 
readme.txt CHANGED
@@ -3,7 +3,7 @@ Contributors: thememylogin, jfarthing84
3
  Tags: login, register, password, branding, customize, widget, wp-login, wp-login.php
4
  Requires at least: 4.6
5
  Tested up to: 4.9.6
6
- Stable tag: 7.0.1
7
 
8
  The ultimate login branding solution! Theme My Login offers matchless customization of your WordPress user experience!
9
 
@@ -59,10 +59,16 @@ Report bugs, suggest ideas and participate in development at [GitHub](https://gi
59
 
60
  == Changelog ==
61
 
 
 
 
 
 
 
62
  = 7.0.1 =
63
  * Fix error where WP_Query is used before expected by other plugins
64
  * Fix existing shortcodes from pre-7 not working due to missing action
65
- * Fix compatibility with plugins the use some legacy methods on the plugin class
66
  * Fix registration redirection when auto-login is enabled
67
  * Allow actions to be represented by pages if their slugs match
68
  * Fix legacy page menu items no longer behaving as they did pre-7
3
  Tags: login, register, password, branding, customize, widget, wp-login, wp-login.php
4
  Requires at least: 4.6
5
  Tested up to: 4.9.6
6
+ Stable tag: 7.0.2
7
 
8
  The ultimate login branding solution! Theme My Login offers matchless customization of your WordPress user experience!
9
 
59
 
60
  == Changelog ==
61
 
62
+ = 7.0.2 =
63
+ * Fix collision with some plugins which modify the nav menu edit walker
64
+ * Fix a notice in multisite
65
+ * Fix pages not using custom templates when used as TML actions
66
+ * Fix shortcode not working in certain circumstances when no action is present
67
+
68
  = 7.0.1 =
69
  * Fix error where WP_Query is used before expected by other plugins
70
  * Fix existing shortcodes from pre-7 not working due to missing action
71
+ * Fix compatibility with plugins that use some legacy methods on the plugin class
72
  * Fix registration redirection when auto-login is enabled
73
  * Allow actions to be represented by pages if their slugs match
74
  * Fix legacy page menu items no longer behaving as they did pre-7
theme-my-login.php CHANGED
@@ -10,7 +10,7 @@
10
  Plugin Name: Theme My Login
11
  Plugin URI: https://thememylogin.com
12
  Description: Creates an alternate login, registration and password recovery experience within your theme.
13
- Version: 7.0.1
14
  Author: Theme My Login
15
  Author URI: https://thememylogin.com
16
  License: GPLv2
@@ -24,7 +24,7 @@ Network: true
24
  *
25
  * @since 7.0
26
  */
27
- define( 'THEME_MY_LOGIN_VERSION', '7.0.1' );
28
 
29
  /**
30
  * Stores the path to TML.
10
  Plugin Name: Theme My Login
11
  Plugin URI: https://thememylogin.com
12
  Description: Creates an alternate login, registration and password recovery experience within your theme.
13
+ Version: 7.0.2
14
  Author: Theme My Login
15
  Author URI: https://thememylogin.com
16
  License: GPLv2
24
  *
25
  * @since 7.0
26
  */
27
+ define( 'THEME_MY_LOGIN_VERSION', '7.0.2' );
28
 
29
  /**
30
  * Stores the path to TML.