Hot answers tagged

10

SEO Lite is always helpful. Dynamic but let's you do page level overrides. No site maps though. http://devot-ee.com/add-ons/seolite Also adds a tab to the publish view so it's readily available.


6

In general, your best bet for SEO is to synchronize "the trinity" – Page title URL H1 heading If you had a blog entry, on a single-entry page, called "One More Blog Entry" – Page title (the <title> tag): One More Blog Entry URL: /blog/post/one-more-blog-entry H1 heading: One More Blog Entry If this were the About Us page, it would be: Page title (...


6

I would recommend this approach with Stash: http://www.jamessmith.co.uk/articles/expressionengine-stash-tutorial-level-1#meta I dislike add-ons that purport to "do" metadata for you, because unless your site is a very basic static page-based affair (where one entry always translates to one page) they can never cover all the possibilities for how metadata ...


6

Take a look at SEO Lite http://devot-ee.com/add-ons/seolite But really, you can just build this into your templates/field groups without the use of an add-on.


5

You don't need an add-on to do this. Just add those items to your templates. You have complete control over every piece of markup in ExpressionEngine, so when it comes to adding any markup to any page generated by EE, it is never a question of "is there a way". If we could see how you've setup your templates (and know whether you're using shared bits of ...


5

You'll want to add 301 redirects to your .htaccess file, with the old URLs mapped to the new URLs. You can parameterize those redirects, so you can match on /walks/findwalk/category/[value] and have it insert that value in your new URL structure. You'll want to Google '301 redirects htaccess' for pointers. I've also found Perishable Press to be a good ...


4

We use this code in our header embed; allows us to do something like {embed="site/_header" meta_title="Example Title"}; alternatively we can specify an entry ID, and SEO Lite will figure out the correct info, or, we can just let it rely on the last segment, which works 95% of the time. It's worth noting that we're also using Mark Croxton's IfElse add-on ...


4

No. The CMS itself has nothing to do an increase in site traffic. However, if a developer doesn't know a lot about EE, it's likely to be perceived that Wordpress caters to SEO better than EE, but this just isn't true. Credible people from both platforms have great success with each (including SEO). The CMS is just a tool people choose for one reason or ...


4

Admin > Channel Administration > Global Preferences > Word Separator for URL Titles > Dash Or, in your config.php file (or your bootstrap equivalent): $config['word_separator'] = 'dash';


4

The short answer is to just pass in either the entry_id or the url_title for this calendar entry, either of which should be easy enough to do on a detail page. To know which would be best in your case I'd need to see key parts of your template(s), but here are a couple examples. Option 1: Use the entry_id for your event from the URL: {exp:seo_lite ...


4

I like the Variables plugin for pushing meta data from my templates to my header. The variables plugin gives the possibility to create variables (either static or dynamic) and use them later on. This means that for example you can set certain data and use it in the head (if it's embedded) without having to re-create a tag pair for the specific channel. ...


4

Sounds like your htaccess file is rewriting the request and serving it to ExpressionEngine index.php. Ensure you have RewriteCond %{REQUEST_FILENAME} !-f in your htaccess file which will ignore all physical file requests and not ask EE to serve the request. # Directs all EE web requests through the site index file RewriteCond %{REQUEST_FILENAME} !-f ...


3

I'm going to put my comment as an answer. For the first line you can change store_product_sku to {product_details:store_product_sku} For the second line if {title} works then IMO you are already in the exp:channel:entries so you have duplicated it that is why may not work correctly. Other way it looks fine. Also you can use short tag {sku} so you need to ...


2

I implemented pubsubhubbub using Superfeedr and it's working well for me. ...and yes, the Ellis Labs support forums are maddeningly slow for me, too. Support is now a profit center for them, so free support is worse than a cost center, it competes with their business model. [edited to correct spelling of Superfeedr]


2

Regarding adding metadata I have you looked at the following: SEO Lite & Better Meta http://devot-ee.com/add-ons/seolite and http://ee-garage.com/nsm-better-meta (inc sitemaps) For no follow links theres: http://devot-ee.com/add-ons/no-follow (though it's straigtforward to add yourself) For sitemaps there: http://devot-ee.com/add-ons/sitemap-module ...


2

This is an old topic with plenty of useful information that seems to mirror your question. Hopefully this is helpful to you: https://stackoverflow.com/questions/13213812/getting-the-trailing-slash-back-in-expressionengine-2


2

ee-garage.com has an extremely complete addon >> nsm better meta. Also, the keyword meta tag is no longer included in search engine bot data mining. Good luck


2

Below final solution based on category custom fields (thanks to Mark), SEO Lite module, Low Seg2Cat and GWcode Categories plugin in case someone will have similar problem which I had. {if segment_2!="" && segment_3==""} {exp:gwcode_categories show="{segment_2_category_id}" custom_fields="yes" style="linear"} {embed="includes/.header-...


2

It's a simple matter of adding the robots meta tag to the templates which you don't wish to be indexed. Then use Google's Webmaster Tools to remove those URLs from its index. You could create a 'dynamic' robots file that applies only to your subdomain by using an htaccess rule like so: (from http://moz.com/community/q/block-an-entire-subdomain-with-robots-...


2

Those things do not matter. Some important SEO stuff: Are your page urls consistent and do they always load the same content? Will /segment1/segment2/segment3 always show the same main content (things like sidebar ads always change and isn't penalized) Do the segment paths make sense? This is good: /blog/jchrono-battle/why-i-use-expression-engine This is ...


2

Sorry we haven't responded to your prior support request attempts. We'll try and get this sorted for you soon. I can think of two reasons that may cause this error to appear but I'll need to take a closer look. Can you please send me a support ticket via http://ee-garage.com/nsm-better-meta/support as I'll probably need to get more information about the ...


2

Nope. however, you are more free in EE to setup fields to tailor your needs. More than in WP


1

Let's try with a sample pagination code from the user guide. {paginate} {pagination_links} <ul> {first_page} <li><a href="{pagination_url}" class="page-first">First Page</a></li> {/first_page} {previous_page} <li><a href="{pagination_url}" class="page-previous">Previous Page&...


1

there is an easier way to do this with SEO Lite, check out this gist which has an example: https://gist.github.com/bjornbjorn/4039233


1

I would recommend that you check SEO Lite.This is actually very basic basic and very helpful. I think I will also check what notacouch have shared here. I will definitely check SurgeEO and SEOverride.


1

James Smith's recommended approach could work for you unless you're just looking for something simpler e.g. similar to fields that can be used across channels. A starting place for that is as Jeremy said, i.e. SEO Lite. However, it is very basic, it's limited to those specific inputs and entries alone. SurgeEO($) ties SEO/meta data to urls as opposed to ...


1

I find this template code works well as a basic canonical link generator: {if segment_3} <link rel="canonical" href="{site_url}{segment_1}/{segment_2}/{segment_3}"> {if:elseif segment_2} <link rel="canonical" href="{site_url}{segment_1}/{segment_2}"> {if:elseif segment_1 == "your-default-template-group"} <link rel="canonical" href="{...


1

You can do this in your htaccess RewriteCond %{QUERY_STRING} URL [NC] RewriteRule .* - [R=404,L] And, EE will return a 404 error code. BUT, EE seems to always return the page that says To proceed to the URL you have requested, click the link below. It won't return your 404 template that you've set in EE (EE seems to give that ?URL parameter precedent over ...


1

In general, don't try to force EE to use a trailing slash. Do the opposite - make the canonical links without a trailing slash. Seriously, that is the way EE likes it, and you are pushing shit uphill trying to do anything else. Don't use a 301 htaccess redirect - that's ridiculous, because EE generates all URLs without a trailing slash. Then you would be ...


1

I presume what you're looking for is a way to break the strict template_group/template structure that EE adheres to by default. If so then the easiest way would be to use Freebie (free addon). Freebie will allow you to define URL segments which EE will ignore completely so you can build up your own custom URL structure, integrate with Structure or anything ...


Only top voted, non community-wiki answers of a minimum length are eligible