{"id":7777,"date":"2018-06-17T19:29:47","date_gmt":"2018-06-17T17:29:47","guid":{"rendered":"https:\/\/www.tomislavstankovic.com\/blog\/?p=7777"},"modified":"2019-01-05T19:47:52","modified_gmt":"2019-01-05T17:47:52","slug":"angular-seo-optimizacija","status":"publish","type":"post","link":"https:\/\/www.tomislavstankovic.com\/blog\/angular-seo-optimizacija\/","title":{"rendered":"Angular 6 &#8211; SEO optimizacija"},"content":{"rendered":"<p>Aplikacije napravljene u <em>Angularu<\/em> u startu nisu <em><a href=\"https:\/\/www.tomislavstankovic.com\/blog\/uvod-seo-bing\/\" rel=\"noopener\" target=\"_blank\">SEO<\/a><\/em> optimizirane \u0161to ne zna\u010di da to tako mora i ostati. Koriste\u0107i <em><strong><a href=\"https:\/\/github.com\/maciejtreder\/ng-toolkit\" rel=\"noopener\" target=\"_blank\">ng-toolkit Universal<\/a><\/strong><\/em> mogu\u0107e je kroz nekoliko koraka omogu\u0107iti da <em>Angular<\/em> aplikacija postane <em>SEO-Friendly<\/em>.<\/p>\n<h2><em>Angular CLI<\/em><\/h2>\n<p>Prije svega, moram provjeriti koju verziju <a href=\"https:\/\/www.tomislavstankovic.com\/blog\/azuriranje-angular-cli\/\" rel=\"noopener\" target=\"_blank\"><em>Angular CLI<\/em>-a<\/a> imam instaliranu. U ovom slu\u010daju to je verzija 6.0.8<\/p>\n<pre class=\"lang:sh decode:true\">$ ng -v<\/pre>\n<p><a href=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija-1-min.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija-1-min.png\" alt=\"Angular CLI verzija: ng -v\" width=\"975\" height=\"544\" class=\"aligncenter size-full wp-image-7783\" srcset=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija-1-min.png 975w, https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija-1-min-300x167.png 300w, https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija-1-min-768x429.png 768w\" sizes=\"auto, (max-width: 975px) 100vw, 975px\" \/><\/a><\/p>\n<h2>Kreiranje <em>Angular<\/em> projekta<\/h2>\n<p>Novi projekt kreiram i pokre\u0107em sljede\u0107im naredbama <\/p>\n<pre class=\"lang:sh decode:true\">$ ng new AngularSeo --routing\r\n$ cd AngularSeo\r\n$ ng serve -o<\/pre>\n<p>U web pregledniku mogu vidjeti kako projekt trenutno izgleda. Na po\u010detnoj se stranici nalazi nekoliko redova teksta. <\/p>\n<p><a href=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija-2-min.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija-2-min.png\" alt=\"Angular 6 - SEO optimizacija\" width=\"1062\" height=\"720\" class=\"aligncenter size-full wp-image-7790\" srcset=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija-2-min.png 1062w, https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija-2-min-300x203.png 300w, https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija-2-min-768x521.png 768w, https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija-2-min-1024x694.png 1024w\" sizes=\"auto, (max-width: 1062px) 100vw, 1062px\" \/><\/a><\/p>\n<p>Me\u0111utim, ako kliknem na desnu tipku mi\u0161a i odaberem &#8216;<em>View page source<\/em>&#8216; mogu vidjeti sljede\u0107e tj. niti jedan od ranije spomenutih redova teksta ovdje nije vidljiv, a trebao bi biti ako \u017eelim imati <em>SEO<\/em> optimizaciju. <\/p>\n<p><a href=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija-3-min.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija-3-min.png\" alt=\"Angular 6 - page source\" width=\"1063\" height=\"721\" class=\"aligncenter size-full wp-image-7792\" srcset=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija-3-min.png 1063w, https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija-3-min-300x203.png 300w, https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija-3-min-768x521.png 768w, https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija-3-min-1024x695.png 1024w\" sizes=\"auto, (max-width: 1063px) 100vw, 1063px\" \/><\/a><\/p>\n<h2>Dodavanje nove komponente<\/h2>\n<p>Novu komponentu dodajem sljede\u0107om naredbom<\/p>\n<pre class=\"lang:sh decode:true\">$ ng g c nova-komponenta<\/pre>\n<p>Nakon \u0161to je komponenta kreirana<\/p>\n<p><a href=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija-4-min.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija-4-min.png\" alt=\"Angular 6 - nova komponenta\" width=\"981\" height=\"211\" class=\"aligncenter size-full wp-image-7799\" srcset=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija-4-min.png 981w, https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija-4-min-300x65.png 300w, https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija-4-min-768x165.png 768w\" sizes=\"auto, (max-width: 981px) 100vw, 981px\" \/><\/a><\/p>\n<p>trebam dodati i pripadaju\u0107u rutu kako bi se nova komponenta prikazala. To \u0107u napraviti unutar datoteke <strong><em>app-routing.module.ts<\/em><\/strong>.<\/p>\n<pre class=\"lang:js mark:4,7-10 decode:true \" title=\"app-routing.module.ts\" >import { NgModule } from '@angular\/core';\r\nimport { Routes, RouterModule } from '@angular\/router';\r\n\r\nimport { NovaKomponentaComponent } from '.\/nova-komponenta\/nova-komponenta.component';\r\n\r\nconst routes: Routes = [\r\n  {\r\n    path: 'nova-komponenta',\r\n    component: NovaKomponentaComponent\r\n  }\r\n];\r\n\r\n@NgModule({\r\n  imports: [RouterModule.forRoot(routes)],\r\n  exports: [RouterModule]\r\n})\r\nexport class AppRoutingModule { }<\/pre>\n<p>Na po\u010detnoj stranici <strong><em>app.component.html<\/em><\/strong> sada mogu navesti poveznicu prema novoj komponenti.<\/p>\n<pre class=\"lang:xhtml mark:9-13 decode:true \" title=\"app.component.html\" >&lt;!--The content below is only a placeholder and can be replaced.--&gt;\r\n&lt;div style=\"text-align:center\"&gt;\r\n  &lt;h1&gt;\r\n    Welcome to {{ title }}!\r\n  &lt;\/h1&gt;\r\n  &lt;img width=\"300\" alt=\"Angular Logo\" src=\"data:image\/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNTAgMjUwIj4KICAgIDxwYXRoIGZpbGw9IiNERDAwMzEiIGQ9Ik0xMjUgMzBMMzEuOSA2My4ybDE0LjIgMTIzLjFMMTI1IDIzMGw3OC45LTQzLjcgMTQuMi0xMjMuMXoiIC8+CiAgICA8cGF0aCBmaWxsPSIjQzMwMDJGIiBkPSJNMTI1IDMwdjIyLjItLjFWMjMwbDc4LjktNDMuNyAxNC4yLTEyMy4xTDEyNSAzMHoiIC8+CiAgICA8cGF0aCAgZmlsbD0iI0ZGRkZGRiIgZD0iTTEyNSA1Mi4xTDY2LjggMTgyLjZoMjEuN2wxMS43LTI5LjJoNDkuNGwxMS43IDI5LjJIMTgzTDEyNSA1Mi4xem0xNyA4My4zaC0zNGwxNy00MC45IDE3IDQwLjl6IiAvPgogIDwvc3ZnPg==\"&gt;\r\n&lt;\/div&gt;\r\n&lt;h2&gt;Here are some links to help you start: &lt;\/h2&gt;\r\n&lt;ul&gt;\r\n    &lt;li&gt;\r\n        &lt;h2&gt;&lt;a routerLink=\"nova-komponenta\"&gt;Nova komponenta&lt;\/a&gt;&lt;\/h2&gt;\r\n      &lt;\/li&gt;\r\n  &lt;li&gt;\r\n    &lt;h2&gt;&lt;a target=\"_blank\" rel=\"noopener\" href=\"https:\/\/angular.io\/tutorial\"&gt;Tour of Heroes&lt;\/a&gt;&lt;\/h2&gt;\r\n  &lt;\/li&gt;\r\n  &lt;li&gt;\r\n    &lt;h2&gt;&lt;a target=\"_blank\" rel=\"noopener\" href=\"https:\/\/github.com\/angular\/angular-cli\/wiki\"&gt;CLI Documentation&lt;\/a&gt;&lt;\/h2&gt;\r\n  &lt;\/li&gt;\r\n  &lt;li&gt;\r\n    &lt;h2&gt;&lt;a target=\"_blank\" rel=\"noopener\" href=\"https:\/\/blog.angular.io\/\"&gt;Angular blog&lt;\/a&gt;&lt;\/h2&gt;\r\n  &lt;\/li&gt;\r\n&lt;\/ul&gt;\r\n\r\n&lt;router-outlet&gt;&lt;\/router-outlet&gt;<\/pre>\n<p>Sve to na kraju izgleda ovako<\/p>\n<p><a href=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija-5.gif\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija-5.gif\" alt=\"Angular 6 \u2013 SEO optimizacija\" width=\"1060\" height=\"780\" class=\"aligncenter size-full wp-image-7802\" \/><\/a><\/p>\n<p>Me\u0111utim, koliko god ja sadr\u017eaja dodao tra\u017eilice ga ne\u0107e vidjeti \u0161to zna\u010di da ga ne\u0107e mo\u0107i indeksirati \u0161to opet zna\u010di da moja <em>Angular<\/em> aplikacija ne\u0107e biti <em>SEO<\/em> optimizirana. <\/p>\n<h2>SEO optimizacija<\/h2>\n<p><em><a href=\"https:\/\/www.tomislavstankovic.com\/blog\/uvod-angular-cli\/\" rel=\"noopener\" target=\"_blank\">Angular CLI<\/a><\/em> \u0107e i ovdje odraditi veliki dio posla umjesto mene. <\/p>\n<p>Pokre\u0107em sljede\u0107u naredbu i nadam se da ne\u0107e biti <a href=\"https:\/\/github.com\/maciejtreder\/ng-toolkit\/issues\" rel=\"noopener\" target=\"_blank\">gre\u0161aka<\/a>. <\/p>\n<pre class=\"lang:sh decode:true\">$ ng add @ng-toolkit\/universal<\/pre>\n<p><a href=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija-6-min.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija-6-min.png\" alt=\"ng-toolkit\/universal\" width=\"980\" height=\"1076\" class=\"aligncenter size-full wp-image-7806\" srcset=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija-6-min.png 980w, https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija-6-min-273x300.png 273w, https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija-6-min-768x843.png 768w, https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija-6-min-933x1024.png 933w\" sizes=\"auto, (max-width: 980px) 100vw, 980px\" \/><\/a><\/p>\n<p>Aplikaciju \u0107u sada pokrenuti sljede\u0107om naredbom <\/p>\n<pre class=\"lang:sh decode:true\">$ npm run build:prod\r\n$ npm run server<\/pre>\n<p>i odmah mogu vidjeti da je od sada moja <em>Angular<\/em> aplikacija <em>SEO<\/em> optimizirana.<\/p>\n<p><a href=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija-7-min.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija-7-min.png\" alt=\"Angular 6 \u2013 SEO optimizacija\" width=\"1063\" height=\"788\" class=\"aligncenter size-full wp-image-7809\" srcset=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija-7-min.png 1063w, https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija-7-min-300x222.png 300w, https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija-7-min-768x569.png 768w, https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija-7-min-1024x759.png 1024w\" sizes=\"auto, (max-width: 1063px) 100vw, 1063px\" \/><\/a><\/p>\n<p>Mogu\u0107e je primijetiti da po\u010detna i nova stranica imaju jednak naslov <\/p>\n<pre class=\"lang:xhtml decode:true\">&lt;title&gt;AngularSeo&lt;\/title&gt;<\/pre>\n<p>Za novu komponentu mogu napraviti poseban naslov na sljede\u0107i na\u010din.<\/p>\n<pre class=\"lang:js mark:2,11,14 decode:true \" title=\"nova-komponenta.component.ts\" >import { Component, OnInit } from '@angular\/core';\r\nimport { Title } from '@angular\/platform-browser';\r\n\r\n@Component({\r\n  selector: 'app-nova-komponenta',\r\n  templateUrl: '.\/nova-komponenta.component.html',\r\n  styleUrls: ['.\/nova-komponenta.component.css']\r\n})\r\nexport class NovaKomponentaComponent implements OnInit {\r\n\r\n  constructor(private _title: Title) { }\r\n\r\n  ngOnInit() {\r\n    this._title.setTitle( 'Ovo je novi naslov!' );\r\n  }\r\n\r\n}<\/pre>\n<p><a href=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija-8.gif\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija-8.gif\" alt=\"Angular 6 \u2013 SEO optimizacija\" width=\"1060\" height=\"829\" class=\"aligncenter size-full wp-image-7812\" \/><\/a><\/p>\n<p><a href=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija-9-min.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija-9-min.png\" alt=\"Angular 6 \u2013 SEO optimizacija\" width=\"1060\" height=\"833\" class=\"aligncenter size-full wp-image-7814\" srcset=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija-9-min.png 1060w, https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija-9-min-300x236.png 300w, https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija-9-min-768x604.png 768w, https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija-9-min-1024x805.png 1024w\" sizes=\"auto, (max-width: 1060px) 100vw, 1060px\" \/><\/a><\/p>\n<h2>Zaklju\u010dak<\/h2>\n<p><em>SEO<\/em> optimizacija je daleko kompleksnije podru\u010dje da bi se gore navedeni primjer mogao smatrati cjelovitim rje\u0161enjem, ali i ovo je dobar po\u010detak za svakog <em>Angular<\/em> developera.<\/p>\n<p>Struktura projekta:<\/p>\n<pre class=\"lang:js decode:true \" title=\"package.json\" >{\r\n  \"name\": \"angular-seo\",\r\n  \"version\": \"0.0.0\",\r\n  \"scripts\": {\r\n    \"ng\": \"ng\",\r\n    \"start\": \"ng serve\",\r\n    \"build\": \"ng build\",\r\n    \"test\": \"ng test\",\r\n    \"lint\": \"ng lint\",\r\n    \"e2e\": \"ng e2e\",\r\n    \"build:server:prod\": \"ng run AngularSeo:server &amp;&amp; webpack --config webpack.server.config.js --progress --colors\",\r\n    \"build:browser:prod\": \"ng build --prod\",\r\n    \"build:prod\": \"npm run build:server:prod &amp;&amp; npm run build:browser:prod\",\r\n    \"server\": \"node local.js\"\r\n  },\r\n  \"private\": true,\r\n  \"dependencies\": {\r\n    \"@angular\/animations\": \"^6.0.3\",\r\n    \"@angular\/common\": \"^6.0.3\",\r\n    \"@angular\/compiler\": \"^6.0.3\",\r\n    \"@angular\/core\": \"^6.0.3\",\r\n    \"@angular\/forms\": \"^6.0.3\",\r\n    \"@angular\/http\": \"^6.0.3\",\r\n    \"@angular\/platform-browser\": \"^6.0.0\",\r\n    \"@angular\/platform-browser-dynamic\": \"^6.0.3\",\r\n    \"@angular\/router\": \"^6.0.3\",\r\n    \"@ng-toolkit\/universal\": \"^1.1.21\",\r\n    \"core-js\": \"^2.5.4\",\r\n    \"rxjs\": \"^6.0.0\",\r\n    \"zone.js\": \"^0.8.26\",\r\n    \"@angular\/platform-server\": \"^6.0.0\",\r\n    \"@nguniversal\/module-map-ngfactory-loader\": \"^6.0.0\",\r\n    \"webpack-cli\": \"^2.1.4\",\r\n    \"ts-loader\": \"4.2.0\",\r\n    \"@nguniversal\/express-engine\": \"^6.0.0\",\r\n    \"cors\": \"~2.8.4\"\r\n  },\r\n  \"devDependencies\": {\r\n    \"@angular\/compiler-cli\": \"^6.0.3\",\r\n    \"@angular-devkit\/build-angular\": \"~0.6.8\",\r\n    \"typescript\": \"~2.7.2\",\r\n    \"@angular\/cli\": \"~6.0.8\",\r\n    \"@angular\/language-service\": \"^6.0.3\",\r\n    \"@types\/jasmine\": \"~2.8.6\",\r\n    \"@types\/jasminewd2\": \"~2.0.3\",\r\n    \"@types\/node\": \"~8.9.4\",\r\n    \"codelyzer\": \"~4.2.1\",\r\n    \"jasmine-core\": \"~2.99.1\",\r\n    \"jasmine-spec-reporter\": \"~4.2.1\",\r\n    \"karma\": \"~1.7.1\",\r\n    \"karma-chrome-launcher\": \"~2.2.0\",\r\n    \"karma-coverage-istanbul-reporter\": \"~2.0.0\",\r\n    \"karma-jasmine\": \"~1.1.1\",\r\n    \"karma-jasmine-html-reporter\": \"^0.2.2\",\r\n    \"protractor\": \"~5.3.0\",\r\n    \"ts-node\": \"~5.0.1\",\r\n    \"tslint\": \"~5.9.1\"\r\n  }\r\n}\r\n<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Aplikacije napravljene u Angularu u startu nisu SEO optimizirane \u0161to ne zna\u010di da to tako mora i ostati. Koriste\u0107i ng-toolkit Universal mogu\u0107e je kroz nekoliko koraka omogu\u0107iti da Angular aplikacija postane SEO-Friendly. Angular CLI Prije svega, moram provjeriti koju verziju Angular CLI-a imam instaliranu. U ovom slu\u010daju to je verzija 6.0.8 $ ng -v Kreiranje &hellip; <a href=\"https:\/\/www.tomislavstankovic.com\/blog\/angular-seo-optimizacija\/\" class=\"more-link\">Nastavi \u010ditati <span class=\"screen-reader-text\">Angular 6 &#8211; SEO optimizacija<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":7778,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[566,351],"tags":[517,471,509,296],"class_list":["post-7777","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-frontend","category-razvoj","tag-ng-toolkit-universal","tag-angular","tag-angular-6","tag-seo"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.7 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Angular 6 - SEO optimizacija - Tomislav Stankovi\u0107<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.tomislavstankovic.com\/blog\/angular-seo-optimizacija\/\" \/>\n<meta property=\"og:locale\" content=\"hr_HR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Angular 6 - SEO optimizacija - Tomislav Stankovi\u0107\" \/>\n<meta property=\"og:description\" content=\"Aplikacije napravljene u Angularu u startu nisu SEO optimizirane \u0161to ne zna\u010di da to tako mora i ostati. Koriste\u0107i ng-toolkit Universal mogu\u0107e je kroz nekoliko koraka omogu\u0107iti da Angular aplikacija postane SEO-Friendly. Angular CLI Prije svega, moram provjeriti koju verziju Angular CLI-a imam instaliranu. U ovom slu\u010daju to je verzija 6.0.8 $ ng -v Kreiranje &hellip; Nastavi \u010ditati Angular 6 &#8211; SEO optimizacija\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.tomislavstankovic.com\/blog\/angular-seo-optimizacija\/\" \/>\n<meta property=\"og:site_name\" content=\"Tomislav Stankovi\u0107\" \/>\n<meta property=\"article:published_time\" content=\"2018-06-17T17:29:47+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2019-01-05T17:47:52+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija.png\" \/>\n\t<meta property=\"og:image:width\" content=\"825\" \/>\n\t<meta property=\"og:image:height\" content=\"510\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Tomislav Stankovi\u0107\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Napisao\/la\" \/>\n\t<meta name=\"twitter:data1\" content=\"Tomislav Stankovi\u0107\" \/>\n\t<meta name=\"twitter:label2\" content=\"Procijenjeno vrijeme \u010ditanja\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/angular-seo-optimizacija\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/angular-seo-optimizacija\\\/\"},\"author\":{\"name\":\"Tomislav Stankovi\u0107\",\"@id\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/#\\\/schema\\\/person\\\/0329c549c57700034ea77f5d3d78396d\"},\"headline\":\"Angular 6 &#8211; SEO optimizacija\",\"datePublished\":\"2018-06-17T17:29:47+00:00\",\"dateModified\":\"2019-01-05T17:47:52+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/angular-seo-optimizacija\\\/\"},\"wordCount\":323,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/#\\\/schema\\\/person\\\/0329c549c57700034ea77f5d3d78396d\"},\"image\":{\"@id\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/angular-seo-optimizacija\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/wp-content\\\/uploads\\\/2018\\\/06\\\/angular6-seo-optimizacija.png\",\"keywords\":[\"@ng-toolkit\\\/universal\",\"Angular\",\"Angular 6\",\"SEO\"],\"articleSection\":[\"Frontend\",\"Razvoj\"],\"inLanguage\":\"hr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/angular-seo-optimizacija\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/angular-seo-optimizacija\\\/\",\"url\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/angular-seo-optimizacija\\\/\",\"name\":\"Angular 6 - SEO optimizacija - Tomislav Stankovi\u0107\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/angular-seo-optimizacija\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/angular-seo-optimizacija\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/wp-content\\\/uploads\\\/2018\\\/06\\\/angular6-seo-optimizacija.png\",\"datePublished\":\"2018-06-17T17:29:47+00:00\",\"dateModified\":\"2019-01-05T17:47:52+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/angular-seo-optimizacija\\\/#breadcrumb\"},\"inLanguage\":\"hr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/angular-seo-optimizacija\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"hr\",\"@id\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/angular-seo-optimizacija\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/wp-content\\\/uploads\\\/2018\\\/06\\\/angular6-seo-optimizacija.png\",\"contentUrl\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/wp-content\\\/uploads\\\/2018\\\/06\\\/angular6-seo-optimizacija.png\",\"width\":825,\"height\":510,\"caption\":\"Angular 6 - SEO optimizacija\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/angular-seo-optimizacija\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Po\u010detna stranica\",\"item\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Angular 6 &#8211; SEO optimizacija\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/\",\"name\":\"Tomislav Stankovi\u0107\",\"description\":\"Sam svoj bloger\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/#\\\/schema\\\/person\\\/0329c549c57700034ea77f5d3d78396d\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"hr\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/#\\\/schema\\\/person\\\/0329c549c57700034ea77f5d3d78396d\",\"name\":\"Tomislav Stankovi\u0107\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"hr\",\"@id\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/wp-content\\\/uploads\\\/2019\\\/10\\\/cropped-TomislavStankovic.jpg\",\"url\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/wp-content\\\/uploads\\\/2019\\\/10\\\/cropped-TomislavStankovic.jpg\",\"contentUrl\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/wp-content\\\/uploads\\\/2019\\\/10\\\/cropped-TomislavStankovic.jpg\",\"width\":248,\"height\":165,\"caption\":\"Tomislav Stankovi\u0107\"},\"logo\":{\"@id\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/wp-content\\\/uploads\\\/2019\\\/10\\\/cropped-TomislavStankovic.jpg\"},\"description\":\"Bloger \u0161irokog raspona interesa od kojih dio voli objaviti na ovom blogu. U neslobodno vrijeme Angular developer mobilnih i web aplikacija.\",\"sameAs\":[\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/\",\"https:\\\/\\\/www.linkedin.com\\\/in\\\/tomislavstankovic\\\/\"],\"url\":\"https:\\\/\\\/www.tomislavstankovic.com\\\/blog\\\/author\\\/tomislavstankovic\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Angular 6 - SEO optimizacija - Tomislav Stankovi\u0107","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.tomislavstankovic.com\/blog\/angular-seo-optimizacija\/","og_locale":"hr_HR","og_type":"article","og_title":"Angular 6 - SEO optimizacija - Tomislav Stankovi\u0107","og_description":"Aplikacije napravljene u Angularu u startu nisu SEO optimizirane \u0161to ne zna\u010di da to tako mora i ostati. Koriste\u0107i ng-toolkit Universal mogu\u0107e je kroz nekoliko koraka omogu\u0107iti da Angular aplikacija postane SEO-Friendly. Angular CLI Prije svega, moram provjeriti koju verziju Angular CLI-a imam instaliranu. U ovom slu\u010daju to je verzija 6.0.8 $ ng -v Kreiranje &hellip; Nastavi \u010ditati Angular 6 &#8211; SEO optimizacija","og_url":"https:\/\/www.tomislavstankovic.com\/blog\/angular-seo-optimizacija\/","og_site_name":"Tomislav Stankovi\u0107","article_published_time":"2018-06-17T17:29:47+00:00","article_modified_time":"2019-01-05T17:47:52+00:00","og_image":[{"width":825,"height":510,"url":"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija.png","type":"image\/png"}],"author":"Tomislav Stankovi\u0107","twitter_card":"summary_large_image","twitter_misc":{"Napisao\/la":"Tomislav Stankovi\u0107","Procijenjeno vrijeme \u010ditanja":"4 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.tomislavstankovic.com\/blog\/angular-seo-optimizacija\/#article","isPartOf":{"@id":"https:\/\/www.tomislavstankovic.com\/blog\/angular-seo-optimizacija\/"},"author":{"name":"Tomislav Stankovi\u0107","@id":"https:\/\/www.tomislavstankovic.com\/blog\/#\/schema\/person\/0329c549c57700034ea77f5d3d78396d"},"headline":"Angular 6 &#8211; SEO optimizacija","datePublished":"2018-06-17T17:29:47+00:00","dateModified":"2019-01-05T17:47:52+00:00","mainEntityOfPage":{"@id":"https:\/\/www.tomislavstankovic.com\/blog\/angular-seo-optimizacija\/"},"wordCount":323,"commentCount":0,"publisher":{"@id":"https:\/\/www.tomislavstankovic.com\/blog\/#\/schema\/person\/0329c549c57700034ea77f5d3d78396d"},"image":{"@id":"https:\/\/www.tomislavstankovic.com\/blog\/angular-seo-optimizacija\/#primaryimage"},"thumbnailUrl":"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija.png","keywords":["@ng-toolkit\/universal","Angular","Angular 6","SEO"],"articleSection":["Frontend","Razvoj"],"inLanguage":"hr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.tomislavstankovic.com\/blog\/angular-seo-optimizacija\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.tomislavstankovic.com\/blog\/angular-seo-optimizacija\/","url":"https:\/\/www.tomislavstankovic.com\/blog\/angular-seo-optimizacija\/","name":"Angular 6 - SEO optimizacija - Tomislav Stankovi\u0107","isPartOf":{"@id":"https:\/\/www.tomislavstankovic.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.tomislavstankovic.com\/blog\/angular-seo-optimizacija\/#primaryimage"},"image":{"@id":"https:\/\/www.tomislavstankovic.com\/blog\/angular-seo-optimizacija\/#primaryimage"},"thumbnailUrl":"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija.png","datePublished":"2018-06-17T17:29:47+00:00","dateModified":"2019-01-05T17:47:52+00:00","breadcrumb":{"@id":"https:\/\/www.tomislavstankovic.com\/blog\/angular-seo-optimizacija\/#breadcrumb"},"inLanguage":"hr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.tomislavstankovic.com\/blog\/angular-seo-optimizacija\/"]}]},{"@type":"ImageObject","inLanguage":"hr","@id":"https:\/\/www.tomislavstankovic.com\/blog\/angular-seo-optimizacija\/#primaryimage","url":"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija.png","contentUrl":"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2018\/06\/angular6-seo-optimizacija.png","width":825,"height":510,"caption":"Angular 6 - SEO optimizacija"},{"@type":"BreadcrumbList","@id":"https:\/\/www.tomislavstankovic.com\/blog\/angular-seo-optimizacija\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Po\u010detna stranica","item":"https:\/\/www.tomislavstankovic.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Angular 6 &#8211; SEO optimizacija"}]},{"@type":"WebSite","@id":"https:\/\/www.tomislavstankovic.com\/blog\/#website","url":"https:\/\/www.tomislavstankovic.com\/blog\/","name":"Tomislav Stankovi\u0107","description":"Sam svoj bloger","publisher":{"@id":"https:\/\/www.tomislavstankovic.com\/blog\/#\/schema\/person\/0329c549c57700034ea77f5d3d78396d"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.tomislavstankovic.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"hr"},{"@type":["Person","Organization"],"@id":"https:\/\/www.tomislavstankovic.com\/blog\/#\/schema\/person\/0329c549c57700034ea77f5d3d78396d","name":"Tomislav Stankovi\u0107","image":{"@type":"ImageObject","inLanguage":"hr","@id":"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2019\/10\/cropped-TomislavStankovic.jpg","url":"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2019\/10\/cropped-TomislavStankovic.jpg","contentUrl":"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2019\/10\/cropped-TomislavStankovic.jpg","width":248,"height":165,"caption":"Tomislav Stankovi\u0107"},"logo":{"@id":"https:\/\/www.tomislavstankovic.com\/blog\/wp-content\/uploads\/2019\/10\/cropped-TomislavStankovic.jpg"},"description":"Bloger \u0161irokog raspona interesa od kojih dio voli objaviti na ovom blogu. U neslobodno vrijeme Angular developer mobilnih i web aplikacija.","sameAs":["https:\/\/www.tomislavstankovic.com\/blog\/","https:\/\/www.linkedin.com\/in\/tomislavstankovic\/"],"url":"https:\/\/www.tomislavstankovic.com\/blog\/author\/tomislavstankovic\/"}]}},"_links":{"self":[{"href":"https:\/\/www.tomislavstankovic.com\/blog\/wp-json\/wp\/v2\/posts\/7777","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.tomislavstankovic.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.tomislavstankovic.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.tomislavstankovic.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.tomislavstankovic.com\/blog\/wp-json\/wp\/v2\/comments?post=7777"}],"version-history":[{"count":31,"href":"https:\/\/www.tomislavstankovic.com\/blog\/wp-json\/wp\/v2\/posts\/7777\/revisions"}],"predecessor-version":[{"id":7819,"href":"https:\/\/www.tomislavstankovic.com\/blog\/wp-json\/wp\/v2\/posts\/7777\/revisions\/7819"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.tomislavstankovic.com\/blog\/wp-json\/wp\/v2\/media\/7778"}],"wp:attachment":[{"href":"https:\/\/www.tomislavstankovic.com\/blog\/wp-json\/wp\/v2\/media?parent=7777"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.tomislavstankovic.com\/blog\/wp-json\/wp\/v2\/categories?post=7777"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.tomislavstankovic.com\/blog\/wp-json\/wp\/v2\/tags?post=7777"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}