{"id":1491,"date":"2019-10-16T16:14:43","date_gmt":"2019-10-16T16:14:43","guid":{"rendered":"http:\/\/3.76.10.198\/blog\/"},"modified":"2026-09-29T13:21:02","modified_gmt":"2026-09-29T13:21:02","slug":"blog","status":"publish","type":"page","link":"https:\/\/catchall.smartup.network\/tr\/blog\/","title":{"rendered":"Blog"},"content":{"rendered":"<div class=\"wpb-content-wrapper\" id=\"wpb-content-root\"><div class=\"vc_row wpb_row vc_row-fluid\"><div class=\"wpb_column vc_column_container vc_col-sm-12\"><div class=\"vc_column-inner\"><div class=\"wpb_wrapper\">\n\t<div class=\"wpb_raw_code wpb_raw_html wpb_content_element\" >\n\t\t<div class=\"wpb_wrapper\">\n\t\t\t<section class=\"sn-blog-portfolio-section\">\n  <div class=\"sn-blog-categories-area\">\n    <button class=\"sn-category-nav\" id=\"snCategoryPrev\" type=\"button\" aria-label=\"Previous categories\">\u2039<\/button>\n\n    <div class=\"sn-blog-categories\" id=\"snBlogCategories\">\n      <button class=\"sn-cat-btn sn-cat-btn--active\" data-cat-id=\"all\" type=\"button\">All<\/button>\n    <\/div>\n\n    <button class=\"sn-category-nav\" id=\"snCategoryNext\" type=\"button\" aria-label=\"Next categories\">\u203a<\/button>\n  <\/div>\n\n  <div class=\"sn-blog-portfolio-grid\" id=\"snBlogPortfolio\">\n    <div class=\"sn-blog-loading\">Blog posts are loading...<\/div>\n  <\/div>\n\n  <div class=\"sn-blog-loadmore-wrap\" id=\"snBlogLoadMoreWrap\" style=\"display:none;\">\n    <button class=\"sn-blog-loadmore-btn\" id=\"snBlogLoadMoreBtn\" type=\"button\">\n      Load More\n    <\/button>\n  <\/div>\n<\/section>\n\n<style>\n  .sn-blog-portfolio-section {\n    width: 100%;\n    box-sizing: border-box;\n  }\n\n  .sn-blog-categories-area {\n    display: flex;\n    align-items: center;\n    gap: 10px;\n    width: 100%;\n    margin-bottom: 34px;\n  }\n\n  .sn-blog-categories {\n    display: flex;\n    align-items: center;\n    gap: 10px;\n    flex: 1;\n    min-width: 0;\n    overflow-x: auto;\n    padding: 4px 2px 10px;\n    scroll-behavior: smooth;\n    scrollbar-width: none;\n    -webkit-overflow-scrolling: touch;\n  }\n\n  .sn-blog-categories::-webkit-scrollbar {\n    display: none;\n  }\n\n  .sn-cat-btn {\n    flex: 0 0 auto;\n    padding: 10px 17px;\n    border: 1px solid #e1e5ef;\n    border-radius: 999px;\n    background: #fff;\n    color: #343853;\n    font-size: 13px;\n    font-weight: 650;\n    line-height: 1.25;\n    white-space: nowrap;\n    cursor: pointer;\n    transition: .25s ease;\n  }\n\n  .sn-cat-btn:hover {\n    color: #10275b;\n    background: #f5f7fc;\n    border-color: #c9d2e6;\n    transform: translateY(-1px);\n  }\n\n  .sn-cat-btn--active {\n    color: #fff !important;\n    background: #10275b !important;\n    border-color: #10275b !important;\n    box-shadow: 0 6px 16px rgba(16, 39, 91, .24);\n  }\n\n  .sn-category-nav {\n    width: 38px;\n    height: 38px;\n    min-width: 38px;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    padding: 0;\n    border: 1px solid #e1e5ef;\n    border-radius: 50%;\n    background: #fff;\n    color: #10275b;\n    font-size: 29px;\n    font-weight: 300;\n    line-height: 1;\n    cursor: pointer;\n    box-shadow: 0 4px 12px rgba(16, 39, 91, .07);\n    transition: .25s ease;\n  }\n\n  .sn-category-nav:hover {\n    color: #fff;\n    background: #10275b;\n    border-color: #10275b;\n    transform: translateY(-1px);\n  }\n\n  .sn-category-nav:disabled {\n    opacity: .28;\n    cursor: default;\n    transform: none;\n  }\n\n  .sn-blog-portfolio-grid {\n    display: grid;\n    grid-template-columns: repeat(2, minmax(0, 1fr));\n    gap: 28px;\n  }\n\n  .sn-blog-card {\n    display: flex;\n    flex-direction: column;\n    height: 100%;\n    overflow: hidden;\n    border: 1px solid #e4e6ef;\n    border-radius: 22px;\n    background: #fff;\n    box-shadow: 0 10px 30px rgba(41, 37, 99, .08);\n    text-decoration: none;\n    transition: transform .3s ease, box-shadow .3s ease;\n  }\n\n  .sn-blog-card:hover {\n    transform: translateY(-4px);\n    box-shadow: 0 18px 40px rgba(41, 37, 99, .12);\n  }\n\n  .sn-blog-cover-wrap {\n    width: 100%;\n    aspect-ratio: 16 \/ 9;\n    overflow: hidden;\n    flex-shrink: 0;\n    background: #191738;\n  }\n\n  .sn-blog-cover {\n    width: 100%;\n    height: 100%;\n    display: block;\n    object-fit: cover;\n    transition: transform .4s ease;\n  }\n\n  .sn-blog-card:hover .sn-blog-cover {\n    transform: scale(1.03);\n  }\n\n  .sn-blog-content {\n    padding: 20px;\n  }\n\n  .sn-blog-title {\n    margin: 0;\n    color: #191738;\n    font-size: 19px;\n    font-weight: 700;\n    line-height: 1.38;\n    letter-spacing: -.02em;\n    display: -webkit-box;\n    overflow: hidden;\n    -webkit-box-orient: vertical;\n    -webkit-line-clamp: 2;\n  }\n\n  .sn-blog-loading,\n  .sn-blog-error,\n  .sn-blog-empty {\n    grid-column: 1 \/ -1;\n    padding: 36px 20px;\n    border: 1px solid #e4e6ef;\n    border-radius: 20px;\n    background: #fff;\n    color: #66657e;\n    text-align: center;\n  }\n\n  .sn-blog-loadmore-wrap {\n    display: flex;\n    justify-content: center;\n    margin-top: 36px;\n  }\n\n  .sn-blog-loadmore-btn {\n    padding: 14px 32px;\n    border: 0;\n    border-radius: 999px;\n    background: #10275b;\n    color: #fff;\n    font-size: 14px;\n    font-weight: 700;\n    cursor: pointer;\n    transition: .25s ease;\n  }\n\n  .sn-blog-loadmore-btn:hover {\n    background: #193880;\n    transform: translateY(-2px);\n    box-shadow: 0 8px 20px rgba(16, 39, 91, .25);\n  }\n\n  .sn-blog-loadmore-btn:disabled {\n    opacity: .6;\n    cursor: not-allowed;\n  }\n\n  @media (max-width: 767px) {\n    .sn-blog-categories-area {\n      gap: 7px;\n      margin-right: -8px;\n      margin-bottom: 25px;\n    }\n\n    .sn-blog-categories {\n      gap: 8px;\n      padding-bottom: 8px;\n    }\n\n    .sn-cat-btn {\n      padding: 9px 14px;\n      font-size: 12.5px;\n    }\n\n    .sn-category-nav {\n      width: 33px;\n      height: 33px;\n      min-width: 33px;\n      font-size: 25px;\n    }\n\n    .sn-blog-portfolio-grid {\n      grid-template-columns: 1fr;\n      gap: 20px;\n    }\n\n    .sn-blog-content {\n      padding: 16px;\n    }\n\n    .sn-blog-title {\n      font-size: 17px;\n    }\n  }\n<\/style>\n\n<script>\n(function () {\n  var container = document.getElementById(\"snBlogPortfolio\");\n  var loadMoreWrap = document.getElementById(\"snBlogLoadMoreWrap\");\n  var loadMoreBtn = document.getElementById(\"snBlogLoadMoreBtn\");\n  var categoriesWrap = document.getElementById(\"snBlogCategories\");\n  var categoryPrev = document.getElementById(\"snCategoryPrev\");\n  var categoryNext = document.getElementById(\"snCategoryNext\");\n\n  if (!container || !loadMoreWrap || !loadMoreBtn || !categoriesWrap) return;\n\n  var POSTS_PER_PAGE = 10;\n  var currentPage = 1;\n  var totalPages = 1;\n  var activeCategory = \"all\";\n  var isLoading = false;\n  var abortController = null;\n\n  var path = window.location.pathname || \"\/\";\n  var htmlLanguage = document.documentElement.getAttribute(\"lang\") || \"\";\n  var isTurkishPage =\n    \/^\\\/tr(?:\\\/|$)\/i.test(path) ||\n    \/^tr(?:-|_)\/i.test(htmlLanguage);\n\n  var texts = isTurkishPage\n    ? {\n        all: \"T\u00fcm\u00fc\",\n        loading: \"Blog yaz\u0131lar\u0131 y\u00fckleniyor...\",\n        loadingMore: \"Y\u00fckleniyor...\",\n        loadMore: \"Daha Fazla G\u00f6ster\",\n        empty: \"Bu kategoride hen\u00fcz yaz\u0131 bulunmuyor.\",\n        error: \"Yaz\u0131lar y\u00fcklenirken bir sorun olu\u015ftu.\",\n        untitled: \"Ba\u015fl\u0131ks\u0131z\"\n      }\n    : {\n        all: \"All\",\n        loading: \"Blog posts are loading...\",\n        loadingMore: \"Loading...\",\n        loadMore: \"Load More\",\n        empty: \"No posts found in this category.\",\n        error: \"Could not load posts.\",\n        untitled: \"Untitled\"\n      };\n\n  \/*\n    Buraya kategorilerin \u0130ngilizce ad\u0131 ve T\u00fcrk\u00e7e kar\u015f\u0131l\u0131\u011f\u0131 yaz\u0131l\u0131r.\n    Kod b\u00fcy\u00fck\/k\u00fc\u00e7\u00fck harf, &, \"and\" ve bo\u015fluk farklar\u0131n\u0131 otomatik alg\u0131lar.\n  *\/\n  var categoryTranslations = {\n    \"investment exit strategies\": \"Yat\u0131r\u0131m ve Exit\",\n    \"ai innovation\": \"Yapay Zeka ve \u0130novasyon\",\n    \"entrepreneurship idea validation\": \"Giri\u015fimcilik ve Fikir Do\u011frulama\",\n    \"growth marketing\": \"B\u00fcy\u00fcme ve Pazarlama\",\n    \"mvp product development\": \"MVP ve \u00dcr\u00fcn Geli\u015ftirme\",\n    \"software technology\": \"Yaz\u0131l\u0131m ve Teknoloji\"\n  };\n\n  function escapeHTML(value) {\n    return String(value || \"\")\n      .replace(\/&\/g, \"&amp;\")\n      .replace(\/<\/g, \"&lt;\")\n      .replace(\/>\/g, \"&gt;\")\n      .replace(\/\"\/g, \"&quot;\")\n      .replace(\/'\/g, \"&#039;\");\n  }\n\n  function textOnly(value) {\n    var div = document.createElement(\"div\");\n    div.innerHTML = value || \"\";\n    return (div.textContent || div.innerText || \"\").trim();\n  }\n\n  function normalizeCategoryName(value) {\n    return textOnly(value)\n      .toLocaleLowerCase(\"en-US\")\n      .replace(\/&\/g, \" and \")\n      .replace(\/[^a-z0-9]+\/g, \" \")\n      .replace(\/\\band\\b\/g, \" \")\n      .replace(\/\\s+\/g, \" \")\n      .trim();\n  }\n\n  function translatedCategoryName(originalName) {\n    var cleanName = textOnly(originalName);\n\n    if (!isTurkishPage) return cleanName;\n\n    var normalized = normalizeCategoryName(cleanName);\n    return categoryTranslations[normalized] || cleanName;\n  }\n\n  function getPostTitle(post) {\n    if (\n      post &&\n      typeof post.sn_translated_title === \"string\" &&\n      post.sn_translated_title.trim()\n    ) {\n      return textOnly(post.sn_translated_title);\n    }\n\n    if (post && post.title && post.title.rendered) {\n      return textOnly(post.title.rendered);\n    }\n\n    return texts.untitled;\n  }\n\n  function getPostLink(post) {\n    var link = post && post.link ? post.link : \"#\";\n\n    if (!isTurkishPage || link === \"#\") return link;\n\n    try {\n      var url = new URL(link, window.location.origin);\n\n      if (\n        url.origin === window.location.origin &&\n        !\/^\\\/tr(?:\\\/|$)\/i.test(url.pathname)\n      ) {\n        url.pathname = \"\/tr\" + url.pathname;\n      }\n\n      return url.toString();\n    } catch (error) {\n      return link;\n    }\n  }\n\n  function getImage(post) {\n    if (\n      post &&\n      post._embedded &&\n      post._embedded[\"wp:featuredmedia\"] &&\n      post._embedded[\"wp:featuredmedia\"][0] &&\n      post._embedded[\"wp:featuredmedia\"][0].source_url\n    ) {\n      return post._embedded[\"wp:featuredmedia\"][0].source_url;\n    }\n\n    return \"\";\n  }\n\n  function createCard(post) {\n    var title = getPostTitle(post);\n    var link = getPostLink(post);\n    var image = getImage(post);\n\n    return (\n      '<a class=\"sn-blog-card\" href=\"' + escapeHTML(link) + '\" target=\"_blank\" rel=\"noopener noreferrer\">' +\n        '<div class=\"sn-blog-cover-wrap\">' +\n          (image\n            ? '<img decoding=\"async\" class=\"sn-blog-cover\" src=\"' + escapeHTML(image) + '\" alt=\"' + escapeHTML(title) + '\" loading=\"lazy\">'\n            : \"\") +\n        \"<\/div>\" +\n        '<div class=\"sn-blog-content\">' +\n          '<h3 class=\"sn-blog-title\">' + escapeHTML(title) + \"<\/h3>\" +\n        \"<\/div>\" +\n      \"<\/a>\"\n    );\n  }\n\n  function updateNavigation() {\n    if (!categoryPrev || !categoryNext) return;\n\n    var maxScroll = categoriesWrap.scrollWidth - categoriesWrap.clientWidth;\n    categoryPrev.disabled = categoriesWrap.scrollLeft <= 5;\n    categoryNext.disabled = categoriesWrap.scrollLeft >= maxScroll - 5;\n  }\n\n  function updateLoading(isNowLoading) {\n    isLoading = isNowLoading;\n    loadMoreBtn.disabled = isNowLoading;\n    loadMoreBtn.textContent = isNowLoading ? texts.loadingMore : texts.loadMore;\n  }\n\n  function activateCategory(button, categoryId) {\n    categoriesWrap.querySelectorAll(\".sn-cat-btn\").forEach(function (item) {\n      item.classList.remove(\"sn-cat-btn--active\");\n    });\n\n    button.classList.add(\"sn-cat-btn--active\");\n    activeCategory = String(categoryId);\n    currentPage = 1;\n\n    button.scrollIntoView({\n      behavior: \"smooth\",\n      block: \"nearest\",\n      inline: \"center\"\n    });\n\n    fetchPosts(1, true);\n  }\n\n  function addCategory(category) {\n    var rawName = textOnly(category.name);\n    var normalized = normalizeCategoryName(rawName);\n\n    if (\n      normalized === \"general\" ||\n      normalized === \"genel\" ||\n      normalized === \"uncategorized\"\n    ) {\n      return;\n    }\n\n    var button = document.createElement(\"button\");\n    button.className = \"sn-cat-btn\";\n    button.type = \"button\";\n    button.setAttribute(\"data-cat-id\", category.id);\n    button.textContent = translatedCategoryName(category.name);\n\n    button.addEventListener(\"click\", function () {\n      if (activeCategory !== String(category.id)) {\n        activateCategory(button, category.id);\n      }\n    });\n\n    categoriesWrap.appendChild(button);\n  }\n\n  function fetchCategories() {\n    \/*\n      Bilerek \/tr\/wp-json kullan\u0131lm\u0131yor.\n      Her zaman ana \u0130ngilizce kaynaktan kategori al\u0131n\u0131r,\n      sonra yaln\u0131zca g\u00f6r\u00fcn\u00fcr ba\u015fl\u0131k T\u00fcrk\u00e7eye \u00e7evrilir.\n    *\/\n    var api = window.location.origin +\n      \"\/wp-json\/wp\/v2\/categories?per_page=100&hide_empty=true&orderby=count&order=desc\";\n\n    fetch(api)\n      .then(function (response) {\n        return response.ok ? response.json() : [];\n      })\n      .then(function (categories) {\n        if (!Array.isArray(categories)) return;\n\n        var allButton = categoriesWrap.querySelector('[data-cat-id=\"all\"]');\n\n        if (allButton) {\n          allButton.textContent = texts.all;\n\n          allButton.addEventListener(\"click\", function () {\n            if (activeCategory !== \"all\") {\n              activateCategory(allButton, \"all\");\n            }\n          });\n        }\n\n        categories.forEach(addCategory);\n        setTimeout(updateNavigation, 100);\n      })\n      .catch(function () {});\n  }\n\n  function fetchPosts(page, reset) {\n    if (abortController) abortController.abort();\n\n    abortController = new AbortController();\n    updateLoading(true);\n\n    if (reset) {\n      container.innerHTML =\n        '<div class=\"sn-blog-loading\">' + escapeHTML(texts.loading) + \"<\/div>\";\n      loadMoreWrap.style.display = \"none\";\n    }\n\n    var api = window.location.origin +\n      \"\/wp-json\/wp\/v2\/posts?_embed=1&per_page=\" + POSTS_PER_PAGE +\n      \"&page=\" + page +\n      \"&orderby=date&order=desc\";\n\n    if (activeCategory !== \"all\") {\n      api += \"&categories=\" + activeCategory;\n    }\n\n    fetch(api, { signal: abortController.signal })\n      .then(function (response) {\n        if (!response.ok) throw new Error(\"API error\");\n\n        totalPages = parseInt(response.headers.get(\"X-WP-TotalPages\"), 10) || 1;\n        return response.json();\n      })\n      .then(function (posts) {\n        if (!Array.isArray(posts) || !posts.length) {\n          if (reset) {\n            container.innerHTML =\n              '<div class=\"sn-blog-empty\">' + escapeHTML(texts.empty) + \"<\/div>\";\n          }\n\n          loadMoreWrap.style.display = \"none\";\n          return;\n        }\n\n        var cards = posts.map(createCard).join(\"\");\n\n        if (reset) {\n          container.innerHTML = cards;\n        } else {\n          container.insertAdjacentHTML(\"beforeend\", cards);\n        }\n\n        loadMoreWrap.style.display = currentPage < totalPages ? \"flex\" : \"none\";\n      })\n      .catch(function (error) {\n        if (error.name === \"AbortError\") return;\n\n        if (reset) {\n          container.innerHTML =\n            '<div class=\"sn-blog-error\">' + escapeHTML(texts.error) + \"<\/div>\";\n        }\n\n        loadMoreWrap.style.display = \"none\";\n      })\n      .finally(function () {\n        updateLoading(false);\n      });\n  }\n\n  if (categoryPrev && categoryNext) {\n    categoryPrev.addEventListener(\"click\", function () {\n      categoriesWrap.scrollBy({ left: -320, behavior: \"smooth\" });\n    });\n\n    categoryNext.addEventListener(\"click\", function () {\n      categoriesWrap.scrollBy({ left: 320, behavior: \"smooth\" });\n    });\n\n    categoriesWrap.addEventListener(\"scroll\", updateNavigation);\n    window.addEventListener(\"resize\", updateNavigation);\n  }\n\n  loadMoreBtn.addEventListener(\"click\", function () {\n    if (currentPage >= totalPages || isLoading) return;\n\n    currentPage += 1;\n    fetchPosts(currentPage, false);\n  });\n\n  fetchCategories();\n  fetchPosts(1, true);\n  updateNavigation();\n})();\n<\/script>\n\t\t<\/div>\n\t<\/div>\n<\/div><\/div><\/div><\/div>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>\u2039 All \u203a Blog posts are loading&#8230; Load More<\/p>","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":30,"comment_status":"closed","ping_status":"closed","template":"","meta":{"content-type":"","footnotes":""},"class_list":["post-1491","page","type-page","status-publish","hentry","description-off"],"_links":{"self":[{"href":"https:\/\/catchall.smartup.network\/tr\/wp-json\/wp\/v2\/pages\/1491","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/catchall.smartup.network\/tr\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/catchall.smartup.network\/tr\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/catchall.smartup.network\/tr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/catchall.smartup.network\/tr\/wp-json\/wp\/v2\/comments?post=1491"}],"version-history":[{"count":6,"href":"https:\/\/catchall.smartup.network\/tr\/wp-json\/wp\/v2\/pages\/1491\/revisions"}],"predecessor-version":[{"id":20932,"href":"https:\/\/catchall.smartup.network\/tr\/wp-json\/wp\/v2\/pages\/1491\/revisions\/20932"}],"wp:attachment":[{"href":"https:\/\/catchall.smartup.network\/tr\/wp-json\/wp\/v2\/media?parent=1491"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}