Commit Graph

40 Commits

Author SHA1 Message Date
Jeremy Felt
599fb50e09 Revert [34778], continue using _site_option() for the current network.
The `_network_option()` parameter order will be changing to accept `$network_id` first. The `_site_option()` functions will remain in use throughout core as our way of retrieving a network option for the current network.

See #28290.


git-svn-id: https://develop.svn.wordpress.org/trunk@34912 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-07 17:11:01 +00:00
Jeremy Felt
3c177b8c6f MS: Use *_network_option() functions throughout core.
Replaces all uses of `*_site_option()` with the corresponding "network" function.

This excludes one usage in `wp-admin/admin-footer.php` that needs more investigation.

Props spacedmonkey.
See #28290.


git-svn-id: https://develop.svn.wordpress.org/trunk@34778 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-02 19:07:23 +00:00
Boone Gorges
0604eff2e2 After [35461], remove 'page_comments' from database.
* Don't set as part of initial schema.
* Delete as part of the `$unusedoptions` routine.

Props ocean90.
See #8071.

git-svn-id: https://develop.svn.wordpress.org/trunk@34562 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-25 20:49:47 +00:00
Boone Gorges
0b7e8399b0 Force comment pagination on single posts.
Previously, the 'page_comments' toggle allowed users to disable comment
pagination. This toggle was only superficial, however. Even with
'page_comments' turned on, `comments_template()` loaded all of a post's
comments into memory, and passed them to `wp_list_comments()` and
`Walker_Comment`, the latter of which produced markup for only the
current page of comments. In other words, it was possible to enable
'page_comments', thereby showing only a subset of a post's comments on a given
page, but all comments continued to be loaded in the background. This technique
scaled poorly. Posts with hundreds or thousands of comments would load slowly,
or not at all, even when the 'comments_per_page' setting was set to a
reasonable number.

Recent changesets have addressed this problem through more efficient tree-
walking, better descendant caching, and more selective queries for top-level
post comments. The current changeset completes the project by addressing the
root issue: that loading a post causes all of its comments to be loaded too.

Here's the breakdown:

* Comment pagination is now forced. Setting 'page_comments' to false leads to evil things when you have many comments. If you want to avoid pagination, set 'comments_per_page' to something high.
* The 'page_comments' setting has been expunged from options-discussion.php, and from places in the codebase where it was referenced. For plugins relying on 'page_comments', we now force the value to `true` with a `pre_option` filter.
* `comments_template()` now queries for an appropriately small number of comments. Usually, this means the `comments_per_page` value.
* To preserve the current (odd) behavior for comment pagination links, some unholy hacks have been inserted into `comments_template()`. The ugliness is insulated in this function for backward compatibility and to minimize collateral damage. A side-effect is that, for certain settings of 'default_comments_page', up to 2x the value of `comments_per_page` might be fetched at a time.
* In support of these changes, a `$format` parameter has been added to `WP_Comment::get_children()`. This param allows you to request a flattened array of comment children, suitable for feeding into `Walker_Comment`.
* `WP_Query` loops are now informed about total available comment counts and comment pages by the `WP_Comment_Query` (`found_comments`, `max_num_pages`), instead of by `Walker_Comment`.

Aside from radical performance improvements in the case of a post with many
comments, this changeset fixes a bug that caused the first page of comments to
be partial (`found_comments` % `comments_per_page`), rather than the last, as
you'd expect.

Props boonebgorges, wonderboymusic.
Fixes #8071.

git-svn-id: https://develop.svn.wordpress.org/trunk@34561 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-25 20:39:18 +00:00
Boone Gorges
3425177325 Introduce metadata for taxonomy terms.
Adds a new table to the database schema (`wp_termmeta`), and a set of
`*_term_meta()` API functions. `get_terms()` and `wp_get_object_terms()`
now also support 'meta_query' parameters, with syntax identical to other
uses of `WP_Meta_Query`.

When fetching terms via `get_terms()` or `wp_get_object_terms()`, metadata for
matched terms is preloaded into the cache by default. Disable this behavior
by setting the new `$update_term_meta_cache` paramater to `false`.

To maximize performance, within `WP_Query` loops, the termmeta cache is *not*
primed by default. Instead, we use a lazy-loading technique: metadata for all
terms belonging to posts in the loop is loaded into the cache the first time
that `get_term_meta()` is called within the loop.

Props boonebgorges, sirzooro.
See #10142.

git-svn-id: https://develop.svn.wordpress.org/trunk@34529 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-25 03:58:59 +00:00
Sergey Biryukov
f90ee7b348 Add missing translator comments after [34293].
See #31851.

git-svn-id: https://develop.svn.wordpress.org/trunk@34298 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-18 18:38:54 +00:00
Scott Taylor
d2b4e0c728 Don't use <code> in translation strings in wp-admin/includes/schema.php.
Props ramiy.
Fixes #31851.


git-svn-id: https://develop.svn.wordpress.org/trunk@34293 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-18 18:20:46 +00:00
Aaron Jorbin
308179c232 Remove support for my-hacks.php
For the last 10 years, my-hacks has been deprecated and has been throwing a deprecation notice. For the last six years, you haven't been able to enable my-hacks.php in the admin UI. That should be enough time to give developers notice. Plugins and themes seem like they might have staying power.

Fixes #33741
Props bobbingwide



git-svn-id: https://develop.svn.wordpress.org/trunk@34291 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-18 17:05:28 +00:00
Gary Pendergast
32b8ff1b14 Schema: Increase the length of wp_options.option_name.
It's pretty easy to run over the `option_name` length, which causes undefined behaviour when inserting and retrieving options. Increasing the length from `VARCHAR(64)` to `VARCHAR(191)` significantly reduces the risk of this occurring.

Because `option_name` has a `UNIQUE` index, we can only increase it to 191 characters, rather than 255. The index can only use a prefix of 191 characters, so will incorrectly restrict long different strings that have the same prefix, if we make the column longer.

Props scribu, OriginalEXE, khromov, MikeHansenMe, netweb, pento.

Fixes #13310.



git-svn-id: https://develop.svn.wordpress.org/trunk@34030 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-11 01:25:21 +00:00
Helen Hou-Sandi
0c19c94561 Drop the hyphen from e-mail and standardize on email.
The AP Stylebook changed this in 2011, and we're woefully inconsistent, so let's go with the standard.

props morganestes, voldemortensen, niallkennedy (for patching on the previous AP style).
fixes #26156.


git-svn-id: https://develop.svn.wordpress.org/trunk@33774 602fd350-edb4-49c9-b593-d223f7449a82
2015-08-28 03:16:02 +00:00
Scott Taylor
e1b1541932 Media:
When inserting an image into a post, the values in `wp.media.controller.Library` should not default to linking the image when no user settings are present.

The default display setting value for `link` is now `none`. User settings persist and will override or confirm this value based on user actions.

Props liljimmi, janhenckens, eherman24, wonderboymusic.
Fixes #31467.


git-svn-id: https://develop.svn.wordpress.org/trunk@33729 602fd350-edb4-49c9-b593-d223f7449a82
2015-08-25 12:12:59 +00:00
Boone Gorges
e33ff607e6 Don't run term-splitting routine on new installations.
Props pento.
Fixes #30261.

git-svn-id: https://develop.svn.wordpress.org/trunk@33621 602fd350-edb4-49c9-b593-d223f7449a82
2015-08-17 14:28:03 +00:00
Scott Taylor
f864c1d712 Add @global annotations to (the rest of the?) wp-admin/* files.
Does not include list table file changes.

See #32444.


git-svn-id: https://develop.svn.wordpress.org/trunk@32643 602fd350-edb4-49c9-b593-d223f7449a82
2015-05-29 02:05:26 +00:00
Scott Taylor
23ce2efd12 Add @global annotations for wp-admin/*.
See #32444.


git-svn-id: https://develop.svn.wordpress.org/trunk@32642 602fd350-edb4-49c9-b593-d223f7449a82
2015-05-28 21:40:27 +00:00
Sergey Biryukov
2b8e7270d5 Multisite: Add translator comments to default email messages with non-typical placeholders.
props yoavf.
fixes #32263.

git-svn-id: https://develop.svn.wordpress.org/trunk@32381 602fd350-edb4-49c9-b593-d223f7449a82
2015-05-06 09:11:18 +00:00
Sergey Biryukov
edeb3f3ae3 Replace generic "Dear user" greeting in email notifications with a more personalized one.
props Ipstenu.
fixes #31217.

git-svn-id: https://develop.svn.wordpress.org/trunk@31403 602fd350-edb4-49c9-b593-d223f7449a82
2015-02-10 07:46:50 +00:00
Gary Pendergast
9f6ddf8944 WPDB: If a site is using the utf8 charset, and their version of MySQL supports utf8mb4, auto-upgrade them to utf8mb4.
This patch also resizes some indexes, to allow for the 767 byte index size limit in standard MySQL installs.

See #21212



git-svn-id: https://develop.svn.wordpress.org/trunk@31349 602fd350-edb4-49c9-b593-d223f7449a82
2015-02-06 04:50:19 +00:00
Andrew Nacin
96dee2af62 Adjust [29806] and revert [29807] to restore placeholder and email copy order.
Avoids unnecessarily changing a (large, carefully formatted) translated string from 4.0.

fixes #21089.


git-svn-id: https://develop.svn.wordpress.org/trunk@30742 602fd350-edb4-49c9-b593-d223f7449a82
2014-12-05 01:14:03 +00:00
Drew Jaynes (DrewAPicture)
7cd15026bd Correct references of @uses $wpdb in core documentation to use @global.
See #30191, [30105].
Fixes #30217.


git-svn-id: https://develop.svn.wordpress.org/trunk@30122 602fd350-edb4-49c9-b593-d223f7449a82
2014-10-31 17:55:39 +00:00
Boone Gorges
ad4aa0b7e0 Remove UNIQUE key from 'slug' column of terms table.
Each slug is a unique and beautiful snowflake, but let's enforce that
uniqueness elsewhere.

Props hotchkissconsulting.
Fixes #22023.

git-svn-id: https://develop.svn.wordpress.org/trunk@30056 602fd350-edb4-49c9-b593-d223f7449a82
2014-10-28 18:36:57 +00:00
Scott Taylor
3a11531451 In the wp_new_blog_notification() email template, include the login url.
Props obenland, georgestephanis.
Fixes #21089.


git-svn-id: https://develop.svn.wordpress.org/trunk@29806 602fd350-edb4-49c9-b593-d223f7449a82
2014-10-02 01:27:57 +00:00
Drew Jaynes (DrewAPicture)
6ddc1e5f6d Fix syntax for single- and multi-line comments in wp-admin-directory files.
See #28931.


git-svn-id: https://develop.svn.wordpress.org/trunk@29206 602fd350-edb4-49c9-b593-d223f7449a82
2014-07-17 09:13:53 +00:00
Andrew Nacin
9452f31220 DB schema change: Add comment_author_email(10) index.
props tellyworth, pento.
fixes #21435.


git-svn-id: https://develop.svn.wordpress.org/trunk@29188 602fd350-edb4-49c9-b593-d223f7449a82
2014-07-16 15:53:14 +00:00
Scott Taylor
1c947d9ef1 Bring the list of upload_filetypes for multisite into modernity based on .com upgrades and supported extensions for audio and video.
Fixes #24434.


git-svn-id: https://develop.svn.wordpress.org/trunk@28832 602fd350-edb4-49c9-b593-d223f7449a82
2014-06-25 17:59:54 +00:00
Scott Taylor
84ad12b439 Replace all uses of like_escape() with $wpdb->esc_like().
Props miqrogroove.
See #10041.


git-svn-id: https://develop.svn.wordpress.org/trunk@28712 602fd350-edb4-49c9-b593-d223f7449a82
2014-06-10 00:43:32 +00:00
Scott Taylor
2cd825a21b Cleanup for switch statements:
* Move `default` to the bottom in `WP_Theme_Install_List_Table`
* `switch/endswitch` syntax is not supported in Hack. Switch to `switch (...) {  .... }` syntax. (A few template-type instances linger).

Fixes #28409.
See #27881.



git-svn-id: https://develop.svn.wordpress.org/trunk@28633 602fd350-edb4-49c9-b593-d223f7449a82
2014-05-30 17:57:51 +00:00
Andrew Nacin
4b6d5b10d4 Move 'home' option to the top of populate_options().
fixes #28141.


git-svn-id: https://develop.svn.wordpress.org/trunk@28260 602fd350-edb4-49c9-b593-d223f7449a82
2014-05-05 21:56:11 +00:00
Andrew Nacin
66f20812b9 Remove old links_recently_updated_* DB options that never had a UI.
fixes #27649.


git-svn-id: https://develop.svn.wordpress.org/trunk@27916 602fd350-edb4-49c9-b593-d223f7449a82
2014-04-03 03:09:59 +00:00
Andrew Nacin
6869d203d0 Introduce get_site_by_path() and further rewrite the site detection process for multisite.
This is the first big step to supporting arbitrary domains and paths. In this new approach, sites are detected first where possible, then the network is inferred. Allows filtering for arbitrary path segments, smooths out some weirdness, and removes various restrictions. A sunrise plugin could do much of its work by adding filters, if those are even needed.

see #27003.


git-svn-id: https://develop.svn.wordpress.org/trunk@27359 602fd350-edb4-49c9-b593-d223f7449a82
2014-03-02 22:24:50 +00:00
Sergey Biryukov
39d55fddb8 Use get_current_site() instead of the $current_site global when possible.
props jeremyfelt.
fixes #25158.

git-svn-id: https://develop.svn.wordpress.org/trunk@26120 602fd350-edb4-49c9-b593-d223f7449a82
2013-11-13 03:22:48 +00:00
Drew Jaynes
acb441a519 Inline documentation for hooks in wp-admin/includes/schema.php.
Props johnafish, kpdesign.
Fixes #25498.


git-svn-id: https://develop.svn.wordpress.org/trunk@25938 602fd350-edb4-49c9-b593-d223f7449a82
2013-10-26 20:28:34 +00:00
Andrew Nacin
142d8c3d30 Delete expired transients on database upgrades.
Reverts [25416], which had all transients being cleared. This leaves much to be desired, but we don't want a core update to be blamed for breaking a site that incorrectly assumes transients aren't transient.

props dartiss, pento.
fixes #20316.


git-svn-id: https://develop.svn.wordpress.org/trunk@25838 602fd350-edb4-49c9-b593-d223f7449a82
2013-10-18 07:47:44 +00:00
Andrew Nacin
1d80307d5d Multisite blogs table: Convert the archived field from enum to tinyint to match the other status fields. fixes #12832.
git-svn-id: https://develop.svn.wordpress.org/trunk@25448 602fd350-edb4-49c9-b593-d223f7449a82
2013-09-15 23:11:30 +00:00
Andrew Nacin
bb2908d613 Clear all transients (regardless of expiration) on all database upgrades. see #20316.
git-svn-id: https://develop.svn.wordpress.org/trunk@25416 602fd350-edb4-49c9-b593-d223f7449a82
2013-09-12 21:13:18 +00:00
Andrew Nacin
8917f2b3bd Add populate_network_meta filter to populate_network().
props jeremyfelt.
fixes #25020.


git-svn-id: https://develop.svn.wordpress.org/trunk@25414 602fd350-edb4-49c9-b593-d223f7449a82
2013-09-12 20:48:20 +00:00
Andrew Nacin
3631b81545 Fix comma placement in [25179].
props gradyetc.
see #15004, fixes #25298.


git-svn-id: https://develop.svn.wordpress.org/trunk@25413 602fd350-edb4-49c9-b593-d223f7449a82
2013-09-12 20:15:30 +00:00
Andrew Nacin
21b61a9e6f Add signup_id primary key to $wpdb->signups, and add better indexes.
props josephscott, pento, barry.
see #15004.


git-svn-id: https://develop.svn.wordpress.org/trunk@25179 602fd350-edb4-49c9-b593-d223f7449a82
2013-08-30 04:29:06 +00:00
Andrew Nacin
fba8c3dabe Avoid validating wildcard hostnames in populate_network() when multisite is already activated.
props jeremyfelt.
fixes #25182.


git-svn-id: https://develop.svn.wordpress.org/trunk@25171 602fd350-edb4-49c9-b593-d223f7449a82
2013-08-29 19:30:46 +00:00
Andrew Nacin
81248f6568 In populate_network(), insert the first site as blog_id 1, overriding any auto-increment DB seed. props wpmuguru, fixes #16568.
git-svn-id: https://develop.svn.wordpress.org/trunk@25038 602fd350-edb4-49c9-b593-d223f7449a82
2013-08-16 20:07:05 +00:00
Andrew Nacin
b43712e0f7 New develop.svn.wordpress.org repository based on the old core.svn repository.
* All WordPress files move to a src/ directory.
 * New task runner (Grunt), configured to copy a built WordPress to build/.
 * svn:ignore and .gitignore for Gruntfile.js, wp-config.php, and node.js.
 * Remove Akismet external from develop.svn. Still exists in core.svn.
 * Drop minified files from src/. The build process will now generate these.

props koop.
see #24976.

and see http://wp.me/p2AvED-1AI.



git-svn-id: https://develop.svn.wordpress.org/trunk@25001 602fd350-edb4-49c9-b593-d223f7449a82
2013-08-07 05:25:25 +00:00