The "static-block" is not displayed in the page code/ magento2 - magento2

I add a static block to a block or page in the Magento admin panel.
<span class="static-block" data-id="faq-payment"></span>
The content of the block is displayed on the front of the page, but there is no content in the page code.
It is necessary for SEO that it appears in the page code. Thanks a lot in advance.
The data-id="faq-payment" contains information, not empty.

Related

Kentico and add Form that posts to external source

I want to create a Salesforce Web to Case from on my Kentico Site.
I have a template built and am inheriting the from that.
I create a new page and then add my form code to the Page Tab > Source and Save.
When I load the page on my site, the form is displayed, but when I hit submit, the form does not do the post action.
How do I accomplish this?
TIA, Jason
Since Kentico is built on web forms, each page's content is wrapped inside a form tag.
Adding your markup (including a form tag) in the middle of a Kentico page results in a nested form, which is invalid.
The quickest way to make this work is probably:
Create a basic HTML document with your markup, and put it on a new page in a "Custom Response" web part. https://www.screencast.com/t/PuwwnFTGGpAJ
Then display that new document in an iframe on your current page.
If that won't work, you can put your form markup in a div hidden by CSS. Then use javascript to move the div to a location after the page's main form tag. You can then use CSS to absolutely position the form on the page.
I hope this is helpful, good luck.

Prevent Component reloading - AEM

I have 2 pages in my web application. Lets say an home page and news feed page. When user clicks a hyperlink on home page then she/ he gets redirected to News feed page. I have 2 separate components in each page like
Home Page --- Header Component & Home Page Details Component.
News Feed Page --- Header Component & News Feed Details Component.
Both the pages has a common component Header. Can I prevent component reloading for the header component when users reaches the second page by clicking link on the first page.
By component reloading I mean the HTML code (HTL) code in the component should not be updated again with updated data instead for the second page, I just want to show the same data associated with header component in the first page.
A new page will always be loaded as a whole, because of just how [HTML] page loads work. What you are looking for is a single page application. They are possible with AEM but are a pain to design, especially the authoring mode behaviour.
This is a very common HTML pattern and possible duplicate of related questions such as: How to auto refresh a section of a page
There are two general approaches, the first being far preferred and supported in various frameworks, all based on JavaScript (AJAX):
Break page into different DIV tags that are independently updated (header separate from body sections, each loaded via AJAX such that only part of the page that has changed is updated).
Use iFrames such that effectively there are different pages - each loaded separately from the other.

Indexing an HTML page that redirects onload

I have a pure GWT based website and as we are aware the search engines cannot index pure gwt based websites. Thus, I have created an alternate web page as shown below which is stored as a separate html in the war folder. The purpose of this webpage is to enlist and index details regarding my website. This page is never displayed on my website, but instead is meant only for indexing. The url leading to this web page is part of the Sitemaps.xml. Thus I am assuming that the below html will be indexed because it's a part of Sitemaps. So here are my questions:
Will the content I give in the div with id "crawler" be indexed given the fact that it is scheduled for removal onload and that the browser is redirected to another url on load?
Is there a better way to get the content indexed for a pure GWT website which does not have any html based user interface?
I can also have urls that will invoke a servlet and return a response that is meant for indexing. But then the same url will be displayed in search results, which is not useful. In other words, I am trying to figure out a way in which the content gets indexed, but when the user clicks the search result he should be redirected to the home page instead of showing the indexed content.
<head>
<script>
function load(){
element = document.getElementById("crawler");
element.parentNode.removeChild(element);
window.location.href='http://<mysite>.com';
}
</script>
</head>
<body onLoad='load()'>
<div id="crawler">
<CONTENT TO BE INDEXED>......
</div>
</body>
As you can see here the div (crawler) that contains all the content that is meant for indexing, is removed as soon as the body loads. Apart from this the page also redirects to the home page of the site on load.
The crawler will read in the entire contents of the page for indexing, so it will have no trouble picking up the portion within the div. The onload is not executed by the crawler prior to reading the page.
A method I have used in the past was to generate static html versions of the pages and reference these through the sitemap.xml. Users landing on the html page would then be directed to the equivalent dynamic page when they click on a link (ie: Buy or Specifications). This worked well for search engine placement with many pages appearing in the top ten.
The best solution to notify the search engines about an undiscoverable website's content is to create a HTML website (as you did). If you create redirects based on the crawler, search engines will not love you. I think you have to fill out your HTML with content with relevant information and add
<link rel="canonical" href="https://gwtsite.com/exact_url"/>
tag to your website's head section. This will notify the search engines that the other site has to appear in the SERP-s instead of the HTML one.

Custom Form not showing up in magento

I am having difficulty getting a form to show on a magento store I am working on. the site already has a contact form so I've copied the form.phtml file and renamed it brochure.phtml.
I've created a static page on the CMS section and added this line of code based on this qusetion
{{block type="core/template" template="contacts/brochure.phtml"}}
When I view the page though nothing shows up. What am I doing wrong? I've never used magento before so please be as detailed in your answers if you can.
CMS -> Pages ->Select your page -> Select "Content" on the left side navigation
Post this code there
{{block type="core/template" name="contactForm" form_action="/contacts/index/post" template="contacts/brochure.phtml"}}
make sure your brochure.phtml file is in the same folder as the form.phtml file. If your CMS page is coming up with the header, body format and the rest of the website layout but the middle content section is plain white then it is not loading your brochure.phtml. If this is the case I would then try loading the default form, so replace "brochure.phtml" with "form.phtml" and reload the page. If you see the default form then you know your brochure.phtml file is in the wrong location.
Hope this fixes your problem.

Facebook "Like" button encoding

I've put like button on joomla site with cyrillic text:
http://womanew.kz/index.php/2011-10-22-01-42-12/2011-11-01-05-34-04/147-2011-11-07-06-22-02
When I push like button facebook's scraper incorrectly encodes the page.
Also I've created static test html page equal to this URL (http://womanew.kz/test.html), and it scrapes well.
All two pages have equal content, but the problem page is generated from Joomla PHP script.
Also I've noticed that scraper reencodes not full document (it keeps head block unchanged), please see its "See exactly what our scraper sees for your URL" debuging page on facebook.
What can I do to struggle this problem?
When I did this I use this manual and didn't have such problem. This is for Joomla website:
1.Go to the Facebook developer page here: http://developers.facebook.com/docs/reference/plugins/like-box
2.Enter the page number (found in your Facebook page URL) of your Facebook page.
3.If you don't have one, go to Facebook Create Page wizard and create a Brand >> Website page for your site.
4.Enter the height (typically 400 pixels) that you want for the Like widget
5.Click the Get Code button to generate the Facebook Code.
6.Open the Joomla Administrator on your site
7.Navigate to the Module Manager
8.Click the New button
9.Select Custom HTML
10.Paste the code into the HTML box (make sure the editor is turned off).
11.Give the module a name
12.Click the Hide Title radio button
13.Select the Module Position where you want the widget to appear
14.Click Save
Also, take a look at http://www.abolkog.com/portal/tutorials-how-to/100-how-to-add-a-facebook-like-box-to-your-joomla-site
Hope, it will help you!
I've found a bug in the site. One of joomla's modules was truncating UTF-8 strings in byte boundaries and this was created one-byte bug character in the page, after this character scraper starts using incorrect encoding.