Meta tags:
description= Thoughts on WordPress;
Headings (most frequently used words):
wordpress, for, your, site, thank, you, response, on, and, to, making, scoutdocs, git, tips, of, mark, page, handling, php, plugins, using, wp, how, the, caching, solution, dev, test, uploads, lots, about, jetpack, driver, laravel, valet, links, v3, build, tools, react, lessons, learned, outsourcing, old, versions, in, plugin, updating, cli, configuring, environments, simple, deploys, fixed, yoast, seo, sitemaps, large, best, hosts, 2016, hosting, pantheon, introducing, cache, buddy, companion, ask, anything, don, use, template_redirect, load, an, alternative, template, file, posts, navigation, thoughts, credentials, production, is, choice, starter, developer, friendly, intermediate, professional, enterprise, picked, powered, deployments, command, line, deployment, live, keep, databases, fresh, no, special, config, setup, problems, sometimes, notices, cause, segfaults, have, own,
Text of the page (most frequently used words):
the (261), and (200), you (175), that (141), wordpress (135), for (115), this (111), your (102), site (74), plugin (55), php (54), can (54), with (53), but (50), have (48), code (45), are (42), what (41), git (41), was (40), not (37), they (36), their (36), page (34), all (32), mark (31), will (31), like (30), just (30), about (29), react (29), file (28), from (28), cache (26), one (26), required (25), sites (24), use (24), #plugins (24), which (24), local (24), when (23), has (23), comment (22), need (22), development (22), pantheon (22), scoutdocs (22), hosting (21), now (20), them (20), these (20), get (20), out (20), would (20), function (19), some (19), more (19), test (19), 2018 (19), using (18), into (18), time (18), _env (18), define (18), jaquith (17), work (17), config (17), live (17), name (16), custom (16), run (16), want (16), start (16), version (16), update (16), services (16), content (15), good (15), don (15), had (15), url (15), new (15), simple (15), sitemap (15), see (14), user (14), also (14), caching (14), could (14), solutions (14), things (14), make (14), dev (14), tools (14), how (14), other (13), very (13), lot (13), been (13), production (13), return (12), web (12), cookies (12), then (12), might (12), back (12), cli (12), even (12), else (11), there (11), issue (11), add (11), because (11), dynamic (11), much (11), really (11), well (11), here (11), server (11), let (11), environments (11), versions (11), com (10), doesn (10), files (10), array (10), deploy (10), hosts (10), developer (10), seo (10), 20k (10), 10k (10), components (10), email (9), should (9), public (9), logged (9), post (9), making (9), database (9), something (9), being (9), example (9), uploads (9), month (9), environment (9), www (9), host (9), needed (9), data (9), yoast (9), outsourcing (9), build (9), icon (9), component (9), website (8), view (8), load (8), its (8), than (8), sure (8), running (8), take (8), links (8), instead (8), know (8), error (8), down (8), first (8), line (8), those (8), command (8), great (8), siteground (8), many (8), project (8), xml (8), commit (8), updates (8), private (8), github (7), may (7), ask (7), still (7), people (7), way (7), available (7), before (7), every (7), done (7), set (7), static (7), seconds (7), next (7), used (7), spend (7), recommend (7), testing (7), terminus (7), option (7), commands (7), link (7), covered (7), above (7), please (7), over (7), someone (7), credentials (7), echo (7), title (7), short (7), redux (7), write (6), sign (6), create (6), posts (6), february (6), redirect (6), going (6), after (6), runs (6), made (6), main (6), output (6), little (6), speed (6), users (6), information (6), javascript (6), pages (6), experience (6), open (6), give (6), based (6), solution (6), where (6), redis (6), clear (6), bit (6), put (6), age (6), called (6), access (6), long (6), check (6), found (6), around (6), plans (6), flow (6), focuses (6), too (6), reach (6), complex (6), index (6), process (6), rewrite (6), once (6), through (6), search (6), were (6), stripe_settings (6), hidden (6), characters (6), unicode (6), june (6), task (6), learned (6), app (6), valet (6), log (5), already (5), include (5), same (5), isn (5), template_redirect (5), add_action (5), last (5), twitter (5), idea (5), varnish (5), nginx (5), buddy (5), sets (5), support (5), front (5), who (5), means (5), works (5), doing (5), following (5), between (5), keep (5), less (5), cookie (5), read (5), powerful (5), urls (5), setting (5), minutes (5), control (5), yoursite (5), env (5), tool (5), repo (5), enterprise (5), staging (5), higher (5), january (5), submit (5), description (5), select (5), budget (5), thank (5), response (5), conversation (5), specializes (5), security (5), optimization (5), customization (5), migrations (5), didn (5), sitemap_index (5), while (5), interface (5), timeout (5), wrong (5), few (5), bad (5), wp_environment (5), updated (5), list (5), passes (5), coding (5), wanted (5), series (5), sharing (5), accept (5), blog (4), older (4), easy (4), my_callback (4), problem (4), reason (4), stop (4), best (4), think (4), questions (4), super (4), total (4), 2015 (4), honestly (4), always (4), views (4), non (4), caches (4), changes (4), takes (4), five (4), times (4), longer (4), though (4), built (4), store (4), makes (4), any (4), tips (4), own (4), low (4), errors (4), likely (4), segfaults (4), does (4), isset (4), until (4), 000 (4), directory (4), day (4), right (4), each (4), http (4), home (4), false (4), two (4), rewriting (4), giving (4), remote (4), deployments (4), engine (4), pagely (4), 2016 (4), method (4), client (4), did (4), money (4), started (4), since (4), range (4), professional (4), choice (4), save (4), off (4), intermediate (4), gogeek (4), working (4), hard (4), sitemaps (4), without (4), engines (4), wait (4), settings (4), increased (4), chunks (4), mode (4), defined (4), quickly (4), txt (4), machine (4), div (4), min_version (4), bidirectional (4), learn (4), syntax (4), old (4), better (4), grunt (4), browserify (4), loading (3), manage (3), subscribe (3), account (3), 2014 (3), redirects (3), theme (3), add_filter (3), anything (3), break (3), alternative (3), template (3), hook (3), quick (3), benefits (3), batcache (3), march (3), customizations (3), commenters (3), served (3), object (3), small (3), toolbar (3), form (3), having (3), registration (3), uses (3), readable (3), years (3), configured (3), everyone (3), taking (3), traffic (3), share (3), why (3), change (3), wouldn (3), worth (3), only (3), individual (3), skip (3), layer (3), happens (3), given (3), bunch (3), mostly (3), level (3), handler (3), trouble (3), show (3), modify (3), nothing (3), reliably (3), handling (3), filesystem (3), consider (3), problems (3), site_server (3), yes (3), nice (3), getting (3), step (3), stuff (3), goes (3), latest (3), yourenv (3), deployment (3), most (3), developers (3), service (3), picks (3), went (3), affiliate (3), three (3), directly (3), whole (3), shared (3), love (3), flows (3), deploys (3), container (3), specific (3), features (3), options (3), look (3), favorite (3), customers (3), asked (3), ecosystem (3), kind (3), happy (3), everything (3), srv (3), eval (3), matter (3), needs (3), slow (3), high (3), maintenance (3), pull (3), able (3), question (3), complicated (3), result (3), commits (3), __dir__ (3), bisect (3), granularity (3), state (3), cannot (3), class (3), admin_notices (3), deactivate (3), args (3), your_plugin_requirements_check (3), installs (3), feel (3), week (3), thoughts (3), outsource (3), partners (3), spending (3), lessons (3), unit (3), rest (3), api (3), adds (3), apps (3), jsx (3), building (3), webpack (3), copy (3), menu (3), jetpack (3), driver (3), missing (3), laravel (3), comments (2), bar (2), report (2), subscribed (2), subscribers (2), template_ (2), includes (2), template_include (2), original_template (2), some_condition (2), some_path (2), lead (2), objects (2), browser (2), queried (2), note (2), mean (2), personal (2), google (2), deal (2), mail (2), decided (2), looks (2), anonymous (2), visitor (2), recreate (2), currently (2), buddypress (2), friend (2), default (2), won (2), useful (2), percentage (2), filled (2), normal (2), cached (2), magic (2), again (2), paths (2), difference (2), miss (2), hit (2), faster (2), second (2), cpu (2), eventually (2), hits (2), top (2), edit (2), feature (2), active (2), community (2), examples (2), outside (2), html (2), future (2), part (2), completely (2), flexible (2), become (2), april (2), debug (2), disable_pantheon_error_handler (2), seen (2), cause (2), hours (2), fixed (2), sometimes (2), crops (2), upload (2), help (2), lots (2), appropriate (2), db_name (2), db_user (2), db_password (2), db_host (2), auth_key (2), secure_auth_key (2), logged_in_key (2), nonce_key (2), auth_salt (2), secure_auth_salt (2), logged_in_salt (2), nonce_salt (2), remove (2), header (2), issues (2), automatically (2), cache_host (2), aren (2), documentation (2), setup (2), my_pantheon_varnish_caching (2), product (2), is_product (2), 120 (2), pantheon_varnish_max_age (2), including (2), publish (2), easily (2), clone (2), push (2), master (2), anywhere (2), deploying (2), drupal (2), marketplace (2), ability (2), multiple (2), tiers (2), cheap (2), november (2), advice (2), categories (2), offer (2), value (2), picked (2), four (2), written (2), excellent (2), plan (2), tier (2), starts (2), 100 (2), taken (2), branch (2), clients (2), awesome (2), payment (2), solid (2), free (2), advanced (2), friendly (2), perks (2), upgrade (2), company (2), choose (2), starter (2), fit (2), exhaustive (2), tell (2), distinct (2), processes (2), benefit (2), date (2), reliable (2), switch (2), location (2), xsl (2), cron (2), generation (2), bin (2), wpseo_sitemaps (2), build_root_map (2), happen (2), generated (2), meant (2), increasing (2), reasonable (2), various (2), figured (2), simply (2), fixing (2), recently (2), came (2), broken (2), breaks (2), methods (2), optional (2), hash (2), ready (2), ssh (2), tedious (2), reset (2), modifications (2), ways (2), current (2), system (2), capistrano (2), anymore (2), clifton (2), griffin (2), hey (2), markjaquith (2), stripe (2), digital (2), gateway (2), situations (2), connecting (2), prevent (2), option_gravityformsaddon_gravityformsstripe_settings (2), api_mode (2), tells (2), section (2), die (2), keeping (2), replace (2), connected (2), flywheel (2), configuring (2), field (2), within (2), broke (2), revisions (2), asking (2), whether (2), revision (2), identify (2), configure (2), hosted (2), requirements (2), raw (2), esc_html (2), wp_version_notice (2), version_compare (2), __wp_at_least (2), true (2), wp_passes (2), php_version_notice (2), __php_at_least (2), php_passes (2), your_prefix_requirements_check (2), contains (2), text (2), interpreted (2), compiled (2), differently (2), appears (2), below (2), review (2), editor (2), reveals (2), initialize (2), autoloader (2), __file__ (2), itself (2), admin (2), saying (2), minimum (2), checks (2), call (2), okay (2), writing (2), namespaces (2), gives (2), closures (2), require (2), supporting (2), increases (2), specify (2), rewrote (2), away (2), our (2), knowing (2), valuable (2), amazon (2), joy (2), maze (2), additionally (2), months (2), looked (2), ran (2), another (2), morning (2), via (2), cdn (2), individuals (2), repository (2), row (2), single (2), mistake (2), hear (2), saved (2), nested (2), refactor (2), yet (2), hate (2), functionality (2), userstatus (2), wrote (2), tried (2), tutorials (2), learning (2), feels (2), beyond (2), handles (2), order (2), continuing (2), talking (2), tweaking (2), comfortable (2), npm (2), runner (2), find (2), redirected (2), item (2), pointed (2), destination (2), fast (2), screen (2), summer (2), today (2), photon (2), myself (2), technique (2), collapse, subscriptions, reader, join, 053, navigation, effect, interfere, distinction, remember, hooked, odd, bugs, filter, exit, popular, query, instantiated, sent, somewhere, place, full, knowledge, ama, treat, searcher, grepper, topic, uniquely, qualified, address, forces, opposed, allows, depth, discussions, talk, topics, try, experiment, zach, holman, tracker, purpose, splendid, appear, reading, supported, hoping, meta, widget, commerce, cms, significant, number, massively, requests, luck, customize, cases, subscriber, contributor, anyway, authors, editors, administrators, viewers, commenter, commented, maybe, requires, signed, prompt, kicker, unknown, optimized, plus, relevant, backend, exist, solving, strip, serve, moved, techniques, calling, minimal, effort, delivered, 002, hundred, slower, connection, cycles, snowball, under, heavy, connections, during, situation, downside, alters, customized, privileges, returning, helpfully, forms, such, hold, triggered, rules, password, infrequently, commenting, smaller, dreaded, fall, generate, common, cdns, generates, later, request, cloudflare, akamai, fastcgi, transformed, crank, nature, challenge, introducing, companion, stops, bubbling, core, lies, blank, disable, causes, pantheon_environment, set_error_handler, produce, logs, tracking, causing, reproducible, weird, ticket, suggest, e_notice, notices, distributed, trivial, scale, adding, linux, containers, directories, folder, usually, partitioned, approaching, mind, count, towards, limit, 1000, splitting, strained, gotchas, hardcode, values, fill, db_port, keys, salts, variables, pretty, cool, huh, domains, leading, preg_replace, _server, http_host, wp_home, wp_siteurl, trick, play, beware, redirection, variants, massage, solidified, siteurl, boom, globals, redis_server, port, cache_port, auth, cache_password, apparently, download, special, unclear, is_user_logged_in, is_home, get_query_var, paged, elseif, function_exists, absint, max, rid, invalidating, standard, headers, obey, developing, complete, workflow, databases, fresh, blogname, usage, bitbucket, powered, entry, quite, welcome, dream, automatic, justify, expense, encourage, thought, answer, asks, regarded, fitting, considered, programs, offered, direct, earn, course, stand, recommendations, either, 2017, favorites, 2006, dedicated, targeted, focus, big, brands, folks, partner, vps, 499, neutrino, staff, retainer, got, innovative, technology, market, appreciate, dead, multidev, lets, spin, sandboxed, send, testers, isolation, merged, 2010, entirely, established, themself, guarantee, automated, migration, existing, grow, offers, unlimited, hired, she, maximum, efficiency, companies, tailored, tremendously, respected, win, retain, business, incredibly, target, picking, kinds, seasoned, frequently, choices, truly, bounty, comparison, comparisons, approach, loads, instantly, kept, background, install, separate, thanks, permanent, sitemap_n, final, path, point, created, resolving, usr, took, job, digging, determined, arbitrary, intensive, requesting, unreasonable, expect, penalize, rankings, irresponsibly, leaving, potentially, abuse, illustrates, face, accumulate, 500, enough, 300, decade, helpful, providing, priority, frustrated, confused, fine, largest, highest, table, contents, prevented, finding, large, bonus, points, roll, previous, case, type, chmod, bash, sshing, script, redirectmatch, 404, apache, htaccess, svn, deny, implement, important, ensure, leak, sensitive, depend, wipe, mistakenly, fetch, origin, fail, naughty, sync, simplest, root, checkout, massive, overkill, maintaining, clifgriffin, weeks, localdev, rely, procedures, explicit, impossible, screw, stressful, pattern, hide, analytics, downloads, protects, against, charged, transactions, purchasing, products, constant, along, calls, gitignore, file_exists, defines, opt, destroyed, his, accidentally, different, playing, tweaks, risking, breaking, mamp, pro, granular, messages, slurps, grabs, writes, steps, instance, loops, message, references, lump, eighteen, known, past, jumps, efficiently, pinpoint, caused, updater, updating, get_bloginfo, contact, phpversion, deactivate_plugins, plugin_basename, foreach, __construct, unset, classes, dirname, lib, rude, goal, move, ancient, wp_die, display, notice, met, minimums, reached, bootstrapper, initializes, compatible, careful, syntactic, goodness, typing, named, handlers, organize, simplify, array_map, traits, dereferencing, guaranteed, availability, late, binding, nowdoc, __dir, economics, force, hand, seemingly, selfish, reasons, unlearn, equivalents, branches, burden, released, year, supports, extreme, redoing, yourself, exactly, constitutes, success, delegation, sense, software, regretted, solved, slog, however, upfront, tasks, throw, gotten, figuring, realizations, sooner, waste, retained, relating, glad, experienced, singular, eternity, lost, confusing, samples, initial, spare, horrifying, realization, delayed, several, rolled, sleeves, almost, original, remained, contractors, realized, forget, quality, despite, vain, reshuffling, lacking, overall, terrible, rather, horrifyingly, admitted, wasn, looking, hiring, him, spaces, tabs, spent, nebulously, unlikely, match, assumptions, mine, odds, happened, raised, beneficial, limited, slept, hour, reviewing, direction, workday, visions, scanning, coffee, brewed, twirling, invisible, moustache, muttering, weekly, cover, stored, securely, cloud, https, global, groups, notifications, handled, delivery, recipients, decline, employees, employee, handbook, living, attachments, third, party, teaches, taught, reusable, originally, envisioned, circumstances, ugh, certainly, altogether, beforerow, onclickothericon, othericon, early, accepted, restrictive, prefix, clickable, property, passed, font, clicked, worked, onclickicon, unwieldy, frustration, converting, structure, props, forwarded, layers, wish, dave, ceddia, earlier, solves, letting, deeply, worse, events, upwards, username, profileform, profile, event, forwarding, chain, stays, tedium, pageheader, navbar, parent, downstream, renders, except, forward, children, actually, caring, themselves, inevitably, pass, explore, storing, application, commonly, creator, skipped, probably, starting, fleshed, complexity, nearly, physically, itchy, jump, gun, stuck, frustrating, toy, overwhelmed, interactive, slowly, refactoring, understood, ended, creating, lesson, felt, straightforward, weekend, incredible, momentum, behind, rich, libraries, educational, resources, plain, central, premise, controller, inextricably, linked, weirdness, quasi, fun, iteration, none, became, deliver, clean, uploading, leave, bounds, decide, strings, etc, began, tooling, becoming, listening, productivity, podcasts, productive, sucked, trap, putting, amount, pay, dividends, mistakes, often, confidence, builds, bundler, modular, gets, pulled, together, executable, bundle, deliberating, chose, avoid, haven, easier, side, scripts, involves, bizarre, wonderful, dump, middle, exquisitely, browsers, agree, containing, transpiled, regular, involve, babel, gulp, uglify, uglifyify, decisions, fierce, advocates, july, announce, soon, stay, tuned, hover, pointing, grab, chosen, visits, click, actions, clipboard, elsewhere, release, indicator, screens, items, hovered, reveal, slug, remembering, shorten, draft, allow, entire, editing, received, survey, responses, 800, interesting, cluttered, creation, specials, aspx, season, _utm_source, internal, sale, celebrate, transition, teenager, added, enhancements, pushed, repointing, tomorrow, org, 339th, 2020, normally, codebase, image, laboriously, clutter, thing, tricky, configs, couldn, routing, images, accelerator, formerly, mac, consulting, tempus, fugit, hub, online, presences, provider, publishing, platform, freelance, close, primary,
Text of the page (random words):
process into two steps on the vm run this wp plugin list update available field name plugins txt wp plugin update all that grabs a list of plugins with updates and writes them to a file plugins txt and then updates all the plugins and then on your local machine run this while read plugin do git add a wp content plugins plugin git commit m update plugin plugin done plugins txt that slurps in that list of updated plugins and does a distinct git add and git commit for each when that s done remove plugins txt all your plugins are quickly updated with wp cli but you get nice granular git commits and messages do you need wordpress services mark runs covered web services which specializes in custom wordpress solutions with focuses on security speed optimization plugin development and customization and complex migrations please reach out to start a conversation back thank you for your response name required email required website budget required select an option 5k 10k 10k 20k above 20k project description required submit δ comment february 12 2018 march 7 2018 mark jaquith tips for configuring wordpress environments many wordpress hosts will give your site a staging environment you can also use tools like local by flywheel or mamp pro to run a local dev version of your site these are great ways of testing code changes playing with new plugins or making theme tweaks without risking breaking your live production site here is my advice for working with different wordpress environments handling credentials the live production version of your site should be opt in that is your site s git repo should not store production credentials in wp config php you don t want something to happen like when this developer accidentally connected to the production database and destroyed all the company data on his first day instead of keeping database credentials in wp config php have wp config php look for a local config php file replace the section that defines the database credentials with something like this if file_exists __dir__ local config php include __dir__ local config php else die local config php not found make sure you add local config php to your gitignore so that no one commits their local version to the repo on production you ll create a local config php with production credentials on staging or development environments you ll create a local config php with the credentials for those environments production is a choice right after the section that calls out local config php put something like this if defined wp_environment define wp_environment development the idea here is that there will always be a wp_environment constant available to you that tells you what kind of environment your site is being run in in production you will put this in local config php along with the database credentials define wp_environment production now in your theme or your custom plugins or other code you can do things like this if production wp_environment add_filter option_gravityformsaddon_gravityformsstripe_settings function stripe_settings stripe_settings api_mode live return stripe_settings else add_filter option_gravityformsaddon_gravityformsstripe_settings function stripe_settings stripe_settings api_mode test return stripe_settings this bit of code is for the easy digital downloads stripe gateway plugin it makes sure that on the production environment the payment gateway is always in live mode and the anywhere else it is always in test mode this protects against two very bad situations connecting to live services from a test environment which could result in customers being charged for test transactions and connecting to test services from a live environment which could prevent customers from purchasing products on your site you can also use this pattern to do things like hide google analytics on your test sites or make sure debug plugins are only active on development sites more on that in a future post don t rely on complicated procedures step 34 make sure you go into the stripe settings and switch the site to test mode on your local test site make these things explicit in code make it impossible to screw it up and working on your sites will become faster and less stressful do you need wordpress services mark runs covered web services which specializes in custom wordpress solutions with focuses on security speed optimization plugin development and customization and complex migrations please reach out to start a conversation back thank you for your response name required email required website budget required select an option 5k 10k 10k 20k above 20k project description required submit δ comment february 5 2018 february 5 2018 mark jaquith development environments localdev simple wordpress deploys using git a few weeks back clifton griffin asked me a question about deploying wordpress sites markjaquith hey mark quick question do you still use and recommend capistrano clifton griffin clifgriffin january 3 2018 i do not use capistrano for deployments anymore for one simple reason it was massive overkill for most of the sites i manage and maintaining it was not worth the benefit my current deployment system for wordpress sites is simple i use git i m already using git for version control of the site s code so using git for deployments is not that much more work there are a few ways to do this but the simplest way is to just make your site root a git checkout of your site files then if your server has read access to your git remote you can run some git commands to sync everything here are your options git pull simple but might fail if someone naughty has made code modifications on the server git fetch git reset hard origin master the hard reset method will wipe any local modifications that someone has mistakenly made but wait before you implement this it is very important that you ensure that your server s git directory is not readable as it might be able to leak sensitive information about your site s code how you do this will depend on what web server you re running in nginx i do the following location ht a z git svn deny all in apache you could put the following in your htaccess file redirectmatch 404 git sshing into your server every time is tedious so let s script that bin bash ssh example com cd srv www example com git pull save that to deploy sh in your git repo run chmod x deploy sh and commit it to the repo now when you re ready to deploy the site just type deploy sh and the public site will pull down the latest changes from your main git remote bonus points if you make deploy sh take an optional commit hash so you can also use this tool to roll back to a previous hash in case a commit goes wrong this method has served me well for years and has required no maintenance what methods are you using for wordpress code deploys do you need wordpress services mark runs covered web services which specializes in custom wordpress solutions with focuses on security speed optimization plugin development and customization and complex migrations please reach out to start a conversation back thank you for your response name required email required website budget required select an option 5k 10k 10k 20k above 20k project description required submit δ comment january 30 2018 january 30 2018 mark jaquith how i fixed yoast seo sitemaps on a large wordpress site one of my covered web services clients recently came to me with a problem yoast seo sitemaps were broken on their largest highest traffic wordpress site yoast seo breaks your sitemap up into chunks on this site the individual chunks were loading but the sitemap index its table of contents would not load and was giving a timeout error this prevented search engines from finding the individual sitemap chunks sitemaps are really helpful for providing information to search engines about the content on your site so fixing this issue was a high priority to the client they were frustrated and confused because this was working just fine on their other sites given that this site has over a decade of content i figured that yoast seo s dynamic generation of the sitemap was simply taking too long and the server was giving up so i increased the site s various timeout settings to 120 seconds no good i increased the timeout settings to 300 seconds five whole minutes still no good this illustrates one of the problems that wordpress sites can face when they accumulate a lot of content dynamic processes start to take longer a process that takes a reasonable 5 seconds with 5 000 posts might take 100 seconds with 500 000 posts i could have eventually made the yoast seo sitemap index work if i increased the timeout high enough but that wouldn t have been a good solution it would have meant increasing the timeout settings irresponsibly high leaving the server potentially open to abuse even though it is search engines not people who are requesting the sitemap it is unreasonable to expect them to wait over 5 minutes for it to load they re likely to give up they might even penalize the site in their rankings for being slow i needed the sitemap to be reliably generated without making the search engines wait when something intensive needs to happen reliably on a site look to the command line the solution yoast seo doesn t have wp cli wordpress command line interface commands but that doesn t matter you can just use wp eval to run arbitrary wordpress php code after a little digging through the yoast seo code i determined that this wp cli command would output the index sitemap wp eval sm new wpseo_sitemaps sm build_root_map sm output that took a good while to run on the command line but that doesn t matter because i just set a cron job to run it once a day and save its output to a static file 0 3 cd srv www example com usr local bin wp eval sm new wpseo_sitemaps sm build_root_map sm output srv www example com wp content uploads sitemap_index xml the final step that was needed was to modify a rewrite in the site s nginx config that would make the sitemap_index xml path point to the cron created static file instead of resolving to yoast seo s dynamic generation url location sitemap x m s l rewrite sitemap xml sitemap_index xml permanent rewrite a z sitemap xsl index php xsl 1 last rewrite sitemap_index xml wp content uploads sitemap_index xml last rewrite sitemap 0 9 xml index php sitemap 1 sitemap_n 2 last now the sitemap index loads instantly because it s a static file and is kept up to date with a reliable background process the client is happy that they didn t have to switch seo plugins or install a separate sitemap plugin everything just works thanks to a little bit of command line magic what other wordpress processes would benefit from this kind of approach do you need wordpress services mark runs covered web services which specializes in custom wordpress solutions with focuses on security speed optimization plugin development and customization and complex migrations please reach out to start a conversation back thank you for your response name required email required website budget required select an option 5k 10k 10k 20k above 20k project description required submit δ comment january 22 2018 january 20 2018 mark jaquith development sitemaps wordpress wp cli yoast seo the 4 best wordpress hosts of 2016 as a seasoned wordpress developer i am frequently asked what wordpress web hosts i recommend there are so many solid choices now the wordpress ecosystem is truly a bounty of choice in 2016 i could write an exhaustive comparison of all of the options but these are called exhaustive comparisons for a reason let s skip that and i ll just tell you the four wordpress hosts i recommend in five distinct tiers note that many of these hosts target a range of sites from starter sites to enterprise sites so i am picking the hosts that i think fit each tier of site best even though they might also work for other kinds of sites starter site siteground is one of my favorite wordpress hosting companies they offer a range of hosting solutions but their wordpress tailored plans are a tremendously good value and have many wordpress specific perks ask around the wordpress community siteground is a well respected company that works hard to win and retain the business of wordpress customers their plans start as low as 3 95 a month which is an incredibly good deal if you aren t sure what you need siteground is what i would choose take a look at siteground s wordpress hosting plans developer friendly site what if you know your way around wordpress want things like git and wp cli access or want advanced wordpress friendly caching for your site siteground has you covered there too their gogeek plan currently 14 95 a month offers all of these perks unlimited sites wordpress staging sites and so much more i love working with gogeek level siteground sites because they work really well and give me access to all the tools that i need as a developer or if you re not a developer but have hired one to work on your site you may want to upgrade to gogeek hosting so she can work at maximum efficiency go sign up for siteground s gogeek wordpress hosting intermediate site wp engine has been around since 2010 focuses entirely on wordpress hosting and has established themself as a solid choice in the intermediate range their plans start at 29 month and include a 60 day money back guarantee and free automated migration of your existing wordpress site wp engine also has more advanced hosting options so they re an option that could grow with you sign up for wp engine using this link and you ll save 20 off your first payment professional site pantheon got their start as a drupal host but have taken their innovative container based hosting technology to the wordpress market as a developer i appreciate their git based development flow their powerful terminus command line client and their built in and dead simple dev test live environments on the higher level plans you get multidev which lets you spin up a sandboxed development environment for a specific git branch this means you can send clients and testers urls for testing new features in isolation before they are merged back into the main code branch awesome their professional tier starts at 100 month which isn t cheap but your developers will love their deployment tools their dev test live code staging flows and their git based deploys to the development environment pantheon is a great choice for professional wordpress sites that have a developer on staff or on retainer check out pantheon s professional wordpress hosting plans enterprise site pagely has been around since 2006 they started the whole wordpress dedicated hosting marketplace when they started they targeted a range of wordpress sites but now they focus on enterprise hosting this is where big brands go for custom wordpress hosting solutions the folks at pagely know wordpress well and will be an excellent hosting partner for your enterprise wordpress si...
|