Skip to main content

Tanya Jawab - Forum

Halaman tanya jawab tentang topik umum, seputar template atau sharing pengetahuan tentang blogger.
Vũ Trần

Vũ Trần
blogger

Messages
48
Points
+178

Reputation: 100%

New #2
@Anonymous I gave up on using google sheet. Because it's too slow, you can use firebase and there are many tutorials on the internet using firebase to create postviews.
(1 balasan) 👋 #1 ,
0
Vũ Trần

Vũ Trần
blogger

Messages
48
Points
+247

Reputation: 100%

New #4
I think it doesn't improve much. Besides, the diagram is not a surprise factor, I'm currently building a story and chapter posting system based on "blogger api". I hope this factor is a surprise factor and simplifies for users :D
0
Anix Play

Anix Play
blogger

Messages
4
Points
+260

Reputation: 40%

New #21
hello min , i want to learn about making custom headers and footers and landing apge on home and homepage on custom url like hexanime for any blogger theme . can you please help me ?
Anticipating a positive response .
Thanking You ,
Anix Themes
(1 balasan) 👋 #1 ❤️ Wernayasa ,
0
Wernayasa

Wernayasa
Admin

Messages
61
Points
+797

Reputation: 100%

New #27
I know, it not fun to make.
Learn how to use framework, it speed up your development time.
The quickest way to get started working with Flowbite is to include the CSS and JS into your project via CDN.
Paste above head <link href="https://cdn.jsdelivr.net/npm/flowbite@3.1.2/dist/flowbite.min.css" rel="stylesheet" /> Paste above body <script src="https://cdn.jsdelivr.net/npm/flowbite@3.1.2/dist/flowbite.min.js"></script> Next copy navbar code, chose any navbar you like: https://flowbite.com/docs/components/navbar/ or footer https://flowbite.com/docs/components/footer/ You can use an AI assistant like ChatGPT to help you get through this difficulty.
(1 balasan) 👋 #1 Anix Play ,
0
Vũ Trần

Vũ Trần
blogger

Messages
48
Points
+218

Reputation: 100%

New #29
The system for posting stories, chapters, and volumes has been running very smoothly. Tomorrow morning, I will release an official demo of this system, and a few days later, I will upload the official theme version :))
0
Anix Play

Anix Play
blogger

Messages
4
Points
+568

Reputation: 40%

New #30
thank you min , yeah sure and i am working now on a new "Anime Streaming project" using base theme v12 ....

demo : https://anixplay-bt.blogspot.com/

cloning : https://github.com/5rahim/seanime/blob/main/docs/images/4/anime-entry-torrent-stream--sq.jpg

just came cross some issues like the layout is bit changed and getting issues in styling . if you are free btw can you help me with some aspects like blog1 grid layout and post series layout only ?

Anticipating a positive response .
Thanking You ,
Anix
(1 balasan) 👋 #1 ❤️ Wernayasa ,
0
Wernayasa

Wernayasa
Admin

Messages
61
Points
+747

Reputation: 100%

New #31
Sorry, i still working on my theme.
In this case you can use b:tag with condition. Replace: <b:loop index='i' values='data:posts' var='post'>
<b:include data='post' name='postCommentsAndAd'/>
</b:loop>
With: <b:tag class='grid grid-cols-[repeat(auto-fill,minmax(230px,1fr))] gap-4' cond='data:view.isMultipleItems' name='div'>
<b:loop index='i' values='data:posts' var='post'>
<b:include data='post' name='postCommentsAndAd'/>
</b:loop>
</b:tag>
0
Tim-Tam

Tim-Tam
blogger

Messages
26
Points
+873

Reputation: 100%

New #38
bang bisa bantu javascript?

aku ingin memasang post author blogger tapi gagal terus.

// buat ambil data penulis
const post = posts[originalPosition]; // Dapatkan post dari data yang sesuai
const author = post.author ? post.author[0].name.$t : 'Unknown'; // data penulisnya

const contentRow = document.createElement('tr');
contentRow.classList.add('post-content');
contentRow.innerHTML = `
<td colspan="4">${content}</td> <!-- Konten utama -->
<td colspan="1" class="author-cell"><strong>Penulis:</strong> ${author}</td> <!-- Author di kolom Rilis -->
`;



hasilnya Unknown terus.
gimana caranya biar dapetin post authornya?
(1 balasan) 👋 #1 Tim-Tam ,
0
Wernayasa

Wernayasa
Admin

Messages
61
Points
+940

Reputation: 100%

New #40
Coba ini: // buat ambil data penulis const post = posts[originalPosition]; // Dapatkan post dari data yang sesuai
const author = post.author ?
(Array.isArray(post.author) ? post.author[0].name.$t : post.author.name.$t)
: (post.entry && post.entry.author ? post.entry.author.name.$t : 'Unknown');

const contentRow = document.createElement('tr');
contentRow.classList.add('post-content');
contentRow.innerHTML = `
<td colspan="4">${content}</td>
<td colspan="1" class="author-cell"><strong>Penulis:</strong> ${author}</td>
`;
Entah bisa atau engk, karena ini buatan ai.
Coba baca dokumetasi ini: [audiralog - Menggunakan Blogger JSON Feed API]
0
Tim-Tam

Tim-Tam
blogger

Messages
26
Points
+382

Reputation: 100%

New #42
satu lagi, supaya url blogger.com berubah jadi nama Blognya gimana?
pake meta tag juga?

https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEievMmXzjI8JFPBXBKC-kF3AQ7JxJ8wCAVDcy5Q3hTU9CEpZ_sm0n_6TkaUICOeff23iYqmOfDD_elMxS55ryTyNHsJX07jieKGwyH0VZFAKPW0-9rpBIxcft8ZHaYZYbuMHx72bdqooUfc6JJw4q3mZcxLIy39LgjorEjade7SI4Dv1f9bEWBq-G6H7OUC/s1600/2.png
(1 balasan) 👋 #1 ❤️ Wernayasa ,
0
Vũ Trần

Vũ Trần
blogger

Messages
48
Points
+292

Reputation: 100%

New #59
Sequential loading from the feed source takes a long time. However, I have a method that can load thousands of chapters from the data feed in under 3 seconds.

You can refer to the following article: https://emissionhex.blogspot.com/2025/03/demo-onetap-manga-100-theme-of-story.html
(1 balasan) 👋 #1 Tim-Tam ,
0
Tim-Tam

Tim-Tam
blogger

Messages
26
Points
+3581

Reputation: 100%

New #60
gini?

const postContainer=document.getElementById("post-container");const label=postContainer.getAttribute("data-label");const feedUrl=startIndex=>`/feeds/posts/default/-/${label}?alt=json&start-index=${startIndex}&max-results=150`;let allChapters=[],currentIndex=-1;function getCurrentPostLink(){return window.location.href;}async function fetchChapters(startIndex){try{const response=await fetch(feedUrl(startIndex));const data=await response.json();return data.feed.entry.map(entry=>({title:entry.title.$t,link:entry.link.find(link=>link.rel==="alternate").href,thumbnail:entry.media$thumbnail?entry.media$thumbnail.url:"",published:new Date(entry.published.$t)}));}catch(error){console.error("Error fetching chapters:",error);return[];}}async function loadAllChapters(){try{const initialResponse=await fetch(feedUrl(1));const initialData=await initialResponse.json();const totalResults=parseInt(initialData.feed.openSearch$totalResults.$t);allChapters.push(...initialData.feed.entry.map(entry=>({title:entry.title.$t,link:entry.link.find(link=>link.rel==="alternate").href,thumbnail:entry.media$thumbnail?entry.media$thumbnail.url:"",published:new Date(entry.published.$t)})));const startIndexes=[];for(let i=151;i<=totalResults;i+=150){startIndexes.push(i);}const remainingChapters=await Promise.all(startIndexes.map(startIndex=>fetchChapters(startIndex)));remainingChapters.forEach(chapters=>allChapters.push(...chapters));const currentPostLink=getCurrentPostLink();currentIndex=allChapters.findIndex(chapter=>chapter.link===currentPostLink);if(currentIndex===-1){currentIndex=0;}updateButtonVisibility();createToC(allChapters);}catch(error){console.error("Error loading all chapters:",error);}}function createToC(filteredPosts){const tocItems=document.getElementById("toc-items");tocItems.innerHTML=filteredPosts.map((post,i)=>`<div class="toc-item"><img src="${post.thumbnail}" alt="Thumbnail" class="toc-thumbnail"><a href="#" onclick="jumpToPost(${i})" class="toc-link">${post.title}</a></div>`).join("");}function jumpToPost(index){currentIndex=index;const postLink=allChapters[currentIndex].link;window.location.assign(postLink);}function updateButtonVisibility(){document.getElementById("prev-btn").disabled=currentIndex<=0;document.getElementById("next-btn").disabled=currentIndex>=allChapters.length-1;}function navigatePost(step){currentIndex+=step;if(currentIndex<0)currentIndex=0;if(currentIndex>=allChapters.length)currentIndex=allChapters.length-1;updateButtonVisibility();const postLink=allChapters[currentIndex]?.link;if(postLink){window.location.assign(postLink);}else{console.warn("Tidak ada tautan untuk postingan ini.");}}document.getElementById("prev-btn").addEventListener("click",()=>{navigatePost(-1);});document.getElementById("next-btn").addEventListener("click",()=>{navigatePost(1);});document.getElementById("toc-btn").addEventListener("click",()=>{const tocList=document.getElementById("toc-list");tocList.classList.add("open");});document.getElementById("close-btn").addEventListener("click",()=>{const tocList=document.getElementById("toc-list");tocList.classList.remove("open");});loadAllChapters();
(1 balasan) 👋 #1 Vũ Trần ,
0
Vũ Trần

Vũ Trần
blogger

Messages
48
Points
+725

Reputation: 100%

New #64
The common method people often use is sequential loading. Each time the number of posts in the feed equals max-results, the system will call the next start-index. However, this approach is very time-consuming when dealing with a large number of posts.

This new method is my own idea. If you look closely, you’ll notice that the openSearch$totalResults parameter represents the total number of posts across the entire system, unrestricted by max-results. By simply using this value to set up a for loop, determining the necessary start-index values, and leveraging Promise.all for parallel fetching, we can significantly optimize loading speed. This is the best possible method, so there will be no better approach.
(1 balasan) 👋 #1 Vũ Trần ,
0
Wernayasa

Wernayasa
Admin

Messages
61
Points
+476

Reputation: 100%

New #66
For a long time, I couldn't understand what you meant.

In my new version, I've added session storage to improve the speed of navigating between chapters.

Now, after reading your second comment, I understand.
Essentially, we are reusing the feed repeatedly all across the theme?

I'm going to try to create a unified feed that can be accessed by all feed themes.
This is a big project, I'm not sure if I'll succeed.
0
Vũ Trần

Vũ Trần
blogger

Messages
48
Points
+1357

Reputation: 100%

New #67
Using "session storage" is not a good idea because it has a limit of about 5–10MB.

My idea is to use an array:
let ChapterCache = [];
to store the chapters.

We will take the id (post ID) of the current chapter and compare it within ChapterCache to determine its position.

When the user clicks "next/prev," instead of reloading the page, we will fetch the data from ChapterCache. We will reuse the existing page structure, only changing the title and content (similar to a single-page application but limited to navigating between chapters).

Using history.pushState, we update the URL as if the user is accessing a new page and push the state into the browser history. This allows the user to use the back/forward buttons as usual.

Here is a demo:
Demo page: [Link]
Demo video: [Link]

This is currently the best approach, and there is certainly no better alternative. Using "session storage" is not just a bad idea—it’s terrible. With this approach, resource usage is minimized because the feed is only loaded once, as we reuse both the feed data and the page structure.
0
Clare

Clare
blogger

Messages
3
Points
+468

Reputation: 30%

New #74
Jika pakai blogger conditional tag, Cara identifikasi url memiliki query tertentu bagaimana ya?
misalnya membuka https://blogger.blogspot.com/?m=1&u=kataKunci
<!-- sudah pakai ini tapi tidak bisa -->
<b:if cond='data:blog.url has "u=kataKunci"'>
<b:if cond='data:blog.url in "u=kataKunci"'>
<b:if cond='data:blog.url includes "u=kataKunci"'>
(1 balasan) 👋 #1 ❤️ Wernayasa ,
0
Wernayasa

Wernayasa
Admin

Messages
61
Points
+254

Reputation: 100%

New #75
<b:if cond='data:blog.url == data:blog.canonicalHomepageUrl + "?m=1&u=kataKunci"'> Aku belum pernah melihat u=kataKunci, apa ini fungsi baru?
Query pencarian seharusnya search?q=kataKunci
0
New #76
Yes, it may be true, as a beginner I also had difficulty understanding it, until it took me 3 days to learn about retrieving data in batch using [promiseAll].

The result is quite satisfying, as a start for me 🥳 [Link].

I think it's better to make an article, I need to understand how it works further.
Reading it through code is a bit difficult.
(1 balasan) 👋 #1 ❤️ Wernayasa ,
0
Vũ Trần

Vũ Trần
blogger

Messages
48
Points
+266

Reputation: 100%

New #79
Good, but using session storage has a 5MB limit. So, we'll use an array to store the chapters and reuse it multiple times when navigating next/prev. Since the array is stored in RAM, it's more suitable for handling large JSON data that exceeds the 5MB limit.
(1 balasan) 👋 #1 Vũ Trần ,
0
Vũ Trần

Vũ Trần
blogger

Messages
48
Points
+641

Reputation: 100%

New #84
Using IndexedDB can be quite complicated when it comes to managing series, updating data, and optimizing performance. If you're storing thousands of series and a bug occurs, fixing it can be a real headache :))

To handle this properly, you need a robust system with optimized algorithms. For example, binary search and other powerful algorithms can be applied to speed up queries.
However, to keep things simple, we can just use a JavaScript array to temporarily store the chapters – and that's more than enough!
Demo Storing chapters in an array: [Link]
(1 balasan) 👋 #1 MAGIC Reincarnated ,
0
New #85
If we only rely on variables to store data as an array, it is difficult to do because our website needs to load every time we change pages.

This method is only good on Single page.

Recently I tested indexedDB with 12000 data, The results are quite good even though when there is a new post or post update it takes a little longer, about 5-9seconds to update the post.
0
Vũ Trần

Vũ Trần
blogger

Messages
48
Points
+416

Reputation: 100%

New #99
I initially thought it would load everything.
However, you should use a Web Worker to prevent lag on the main thread when loading Series data into IndexedDB.
Additionally, there are several major challenges, such as updating posts, optimizing resources, and bandwidth efficiency.
There's a similar site that also uses IndexedDB for storage across the entire platform: https://truyendex.com/nettrom
0
Wernayasa

Wernayasa
Admin

Messages
61
Points
+536

Reputation: 100%

New #101
Yap, itu masalahnay.
Banyak rencana tapi sedikit waktu.
Tadi pagi aku coba bikin ui untuk web app, ternyata sulit juga.
https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj_KbG7Q7y08RkERyCXfBOJ5pun9-XDA6HxLEweJ5_DcnyDUyVavtNYah3K27USTjUKk7V3XG4BWCwpIbtDJs6qPU1YuC1J9NXDDIiD30HiZovqiKgai__RDd6SW1H1RrNxXeuVGAX4f-9FtBF9bOV6Oq_4rw0k0CQVDVoI-KaaHMHMkQ1RWNql0vLfPs0/s854/Screenshot%202025-03-30%20at%2007-04-16%20.png
Proyeknya batal.
Aku bakal bikin web app kalau antrian tema sudah clear.
(1 balasan) 👋 #1 Tim-Tam ,
0
Tim-Tam

Tim-Tam
blogger

Messages
26
Points
+659

Reputation: 100%

New #102
kira-kira berat gak nih bang?
Baca manga : [Demo]
Baca novel : [Demo]

Untuk baca manga pake navigasi dinamis bisa dengan cara klik gambar dan navigasi keyboard jadi enak mau di baca di pc atau mobile apalagi fokus ke manganya.

Untuk baca novel pake highlight teks jadi enak kalo pake text to speech.

untuk baca novel masih agak was-was soalnya itu merubah struktur html ketika ada higlight teks jadi takutnya bikin yang perangkatnya biasa aja jadi lag.
(1 balasan) 👋 #1 ❤️ Wernayasa ,
0
Wernayasa

Wernayasa
Admin

Messages
61
Points
+308

Reputation: 100%

New #103
Ringan. Recomended.
Seharusnya seperti ini post chapter, temaku sudah ketingalan zaman.
Makanya, kedepannya nanti temaku pakai cara ini.

Aku gk terlalu minat dengan text to speech.
Tapi berguna untuk orang yg punya disabilitas.

Menurutku gk akan berdampak pada peformace.
0
A

Anonymous
anonymous

Messages
17
Points
+309

Reputation: 100%

New #104
Hello guys. I don't speak your language, so i will speak in english. I would like to know how to use the "random post" field. I labeled some works as "completed", as it is marked in the field, but the works did not appear, this part just kept loading. What should I do to make it work?
(1 balasan) 👋 #1 ❤️ Wernayasa ,
0
Tim-Tam

Tim-Tam
blogger

Messages
26
Points
+740

Reputation: 100%

New #110
untuk menghilangkan postingan tertentu di blog1 biasanya menggunakan apa?
saya pake ini:
<b:loop index='i' values='data:posts' var='post'>
<b:if cond='data:post.labels'>
<b:if cond='!(data:post.labels any (l =&gt; l.name == &quot;Chapter&quot;))'>
<b:include data='post' name='postCommentsAndAd'/>
</b:if>
</b:if>
</b:loop>

ternyata kalo pake itu yang di hilangkan juga masih termasuk postingannya, jadi kalo di set 9 post, postingan terbaru yang di hilangkan tetap di hitung, di homepage jadinya cuman ada 8 postingan.
0
Tim-Tam

Tim-Tam
blogger

Messages
26
Points
+532

Reputation: 100%

New #127
kepikiran buat bikin search box yang bisa cari judul dari bahasa lain.
akhirnya bisa juga [link]
siapa tahu bisa jadi update buat template animanga lain.

jadi bisa mencari menggunakan judul post dan juga judul yang terkait, contoh post saya ada series ini, dengan mengetik salah satu judul ini akan langsung muncul di pencariannya. jadi makin fleksibel.
RE: Ankoku Kishi Monogatari
Dark Knight Story
RE: Tale of the Dark Knight
暗黒騎士物語
(1 balasan) 👋 #1 ❤️ Wernayasa ,
0
New #130
pertanyaan:
kalau gabungkan xml dengan js untuk menangkap label bakal ada masalahkah kedepannya.
[link]

tujuanku mau pasang label lebih bebas dibagian chapter, contoh translation by authorname, Volume Number.
kalau gabungkan dengan js lebih enak aja bisa pakai regex.
tapi aku gak tau bakal ada masalah atau tidak kedepannya.
(1 balasan) 👋 #1 ❤️ Wernayasa ,
0
A

Anonymous
anonymous

Messages
17
Points
+318

Reputation: 100%

New #134
Anyone how to make this dark mode? https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhTFyvGnH20WsMiipENwjmgtQmqoWcNZLYYKTJuwjFPbHmH4iIgJznbOTstUeWQ5c-EE4M8Qu6lunQJnHwzcf34THsK6GlmVSuDqvT93YJismwVxpJPbckutKGpBqmiUqCC1DZKEzi4t9viLid2l1adIQXQCn_H6Zu6DJ5v2TR4WcFVA_mjrZO2Otozuy4j/s1600/image.webp
0
Wernayasa

Wernayasa
Admin

Messages
61
Points
+1349

Reputation: 100%

New #140
Ini hanya muncul jika ada 200 komentar: <b:if cond='data:post.commentPagingRequired'>
<div class='paging-control-container'>
<b:if cond='data:post.hasOlderLinks'>
<a expr:class='data:post.oldLinkClass' expr:href='data:post.oldestLinkUrl'>
<data:messages.oldest/>
</a>
<a expr:class='data:post.oldLinkClass' expr:href='data:post.olderLinkUrl'>
<data:messages.older/>
</a>
</b:if>

<span class='comment-range-text'>
<data:post.commentRangeText/>
</span>

<b:if cond='data:post.hasNewerLinks'>
<a expr:class='data:post.newLinkClass' expr:href='data:post.newerLinkUrl'>
<data:messages.newer/>
</a>
<a expr:class='data:post.newLinkClass' expr:href='data:post.newestLinkUrl'>
<data:messages.newest/>
</a>
</b:if>
</div>
</b:if>
0
Tim-Tam

Tim-Tam
blogger

Messages
26
Points
+1132

Reputation: 100%

New #159
sudah bisa, ternyata asik juga mainin b:include fokus ke homepage dulu.
oh iya saya coba copy code

<b:includable id='postTitle' var='post'>
<b:if cond='data:post.title != &quot;&quot;'>
<b:tag class='post-title entry-title' cond='data:view.isMultipleItems' name='h3'>
<b:tag class='post-title entry-title' cond='data:view.isPost' name='h1'>
<b:if cond='data:post.link or (data:post.url and data:view.url != data:post.url)'>
<b:include name='flag'/><a expr:href='data:post.link ?: data:post.url'><data:post.title/></a>
<b:else/>
<data:post.title/>
</b:if>
</b:tag>
</b:tag>
</b:if>
</b:includable>


yang ada di doujinread.
ternyata pas saya pake di tema sendiri postingan di homepage malah hilang. kenapa ya? apakah memang harus di setting juga b:include yang lain?
(1 balasan) 👋 #1 ❤️ Wernayasa ,
0
Tim-Tam

Tim-Tam
blogger

Messages
26
Points
+416

Reputation: 100%

New #161
udah mulai kebentuk.
buat ngatasin postingan bengkak akhirnya pake solusi json.
ngambil postingan dari blog ke 2 dan ternyata bisa fleksibel.
jadi tiap postingan novel punya postingan tunggal tidak perlu mikirin postingan chapter.
kalo ada yang tertarik sama jsnya nanti saya kasih reponya.

[Demo]
(1 balasan) 👋 #1 ❤️ Wernayasa ,
0
Tim-Tam

Tim-Tam
blogger

Messages
26
Points
+646

Reputation: 100%

New #165
asli entah kenapa lagi bagus moodnya.
versi 2 udah jadi dan lebih powerful bang.
udah berhasil ngatasin ngancurin kelemahan feed blogger.

jadi sudah gak bakal ada batasan kuota app script yang awalnya 20k perhari bisa jadi 100k atau lebih perhari.
terus batasan url feed 5000, dan 150 per halaman bisa di atasin.

feednya bisa mengambil data sesuai label, jadi kalo ada 5000 post, cuman beberapa post yang di panggil (sesuai label saja, karena bantuan app script) jadi sudah tidak perlu load 5000 post secara langsung.

dan bisa banyak url feed juga.
nanti bakal aku pasang di Naisu Novel.
(1 balasan) 👋 #1 Vũ Trần ,
0
omega

omega
blogger

Messages
3
Points
+220

Reputation: 30%

New #170
keren juga ini tapi aku awalnya bingung karena nggak ada list chapter atau list volume jadi aku bingung mau baca gimana jadi mungkin saran aku buat ada list chapter soalnya kadang pembaca kalo mau baca liat list chapter
0
Han Haoyu

Han Haoyu
blogger

Messages
8
Points
+2595

Reputation: 80%

New #178
cmiiw but ini secara pengalaman aja yaa, blogger tidak ada bahkan tidak terbilang bahwasannya adanya batasan posting.

blogger bisa memberikan sanksi ban pada blog itu dikarenakan blogger menggunakan Anti-spam system otomatis yang bisa mendeteksi pola posting abnormal dan Algoritma behavior-based untuk mendeteksi spam.

contoh kasus yang sering kena ban spam itu karena :
1. Posting bervolume tinggi dalam waktu singkat (bisa terjadi karena import konten atau upload secara brutal yang isi kontennya ngawur)
2. Konten duplikat atau near-duplicate
3. Pattern posting yang tidak natural (aku sering liat blog kayak hasil generate bot/ai awowk)
4. Keyword stuffing berlebihan
5. Link spam atau excessive outbound links
6. Posting puluhan artikel per hari secara konsisten tanpa adanya pembeda isi konten (aku punya web komik, isinya sama semua, 3x pernah kena ban, tapi setelah aku pakai cara generate kata kunci di post yang menhasilkan isi konten di setiap post beda2, alhasil sampai detik ini udah 4 tahun web aman)
7. Tidak ada interaksi manual (hanya automated posting)
8. Tidak ada editing/revision pada posts
9. Pattern posting (selalu jam yang sama, format sama)

TERUS CARAKU MENGHINDARI BAN GIMANA?
1. Posting natural - maksimal 20-60 post per hari (lebih gapapa, tapi wajib tiap post beda2 isi kontennya yak, bisa dengan cara kamu bikin tag pembuka yang beda, keyword berbeda yang nyata di tag html post, dll)
2. Original content - tulis sendiri atau heavy editing
3. Manual interaction - login, edit, respond to comments
4. Varied posting times - tidak selalu jam yang sama (kadang aku post secara berurutan di jam yang sama sih, oke aja kok, ga bakal kena ban kalau memang isi kontennya itu ada bedanya, bisa lihat point 1 ku diatas)
5. Quality over quantity - fokus konten berkualitas (ini wajib sih, kecuali blog kamu komik, anime, atau niche lain yang berhubungan dengan upload massal wajib pakai cara poin ke 1 ku)

Kesimpulannya meskipun blogger tidak mempublikasikan batasan eksplisit, sistem anti-spam mereka sangat sophisticated dan bisa mendeteksi pola abuse anjay. Key-nya adalah natural, gradual growth, isi konten wajib beda2 dikit (kalau gamau ribet bisa pakai js untuk membuat template kalimat yang sama tapi dibedakan dari segi judul aja pakai data tag title blogger, terus bisa ambil data tag label post blogger, sampai ke data tag blogger lainnya wajib di manfaatkan dengan baik), ga asal2an dan yaps yang terpenting adalah konten original dan berkualitas.
0
Han Haoyu

Han Haoyu
blogger

Messages
8
Points
+232

Reputation: 80%

New #181
oke gapapa min, aku ada salinan komennya kok (berlangganan komen di blog emission kok), jadi semua komen yang telah aku kirim ke blog ini, bahkan komen lain yang membalas komenku di blog ini akan selalu terkirim di email ku sendiri.
0
Han Haoyu

Han Haoyu
blogger

Messages
8
Points
+400

Reputation: 80%

New #183
btw hao nemuin bug di komentar emission hex, jika memasukkan garis miring 2 kali di komentar ini, maka akan hilang.

coba aja misal tulis gini :
https://claude.ai/api/9ba5cf7f-756a-4054-b4ce-75d7a8423c48/files/f26a9d43-0289-44ee-be6b-28037582c49a/preview

lalu coba publish komennya disini dan coba refresh page sampai 2x, lihat lagi pasti komennya ilang min
0
Tim-Tam

Tim-Tam
blogger

Messages
26
Points
+475

Reputation: 100%

New #184
bang badge ini
<b:if cond='data:post.labels any (l =&gt; l.name == &quot;selesai&quot;)'><span class='badge badge selesai'>Selesai</span></b:if>
bisa dibuat dinamis gak?
jadi aku mau bikin volume 1-seterusnya.
jadi mau bikin label: "Volume 1" etc dengan satu html saja.
soalnya bakal redundan kalo bikin badge volume banyak".
sipaa tahu disini ada yang bisa.
(1 balasan) 👋 #1 ,
0
Miyamura

Miyamura
blogger

Messages
6
Points
+234

Reputation: 60%

New #198
Gak jadi min, aku cuma mau buat postingan di blogger untuk membuat "Postingan" agi di blogger tapi ini pakai Client ID. 😅
Biar saya enak nulis nya gitu dan nanti terhindar dari Spam yang terdeteksi oleh blogger. Hahaha
0
Miyamura

Miyamura
blogger

Messages
6
Points
+364

Reputation: 60%

New #199
Sekarang saya bisa menghindari spam yang di deteksi oleh blogger dengan membuat konten blog saya jai "Terjadwal" dan belum langsung di publikasikan, hampir mirip dengan trik dari Tim-Tam cuma agak beresiko juga kalau cuma 5 atau 10 menit saja kalau ada banyak konten blog yang harus di publikasi. 😅
Nemu masalah sendiri selesai-in masalah sendiri.
0
Han Haoyu

Han Haoyu
blogger

Messages
8
Points
+536

Reputation: 80%

New #200
nah iyaa kan, itu aku mau balas pertanyaan dari @Kseonxnn, tapi komennya ilang sendiri, kupikir awalnya ada yang hapus, ternyata bug setelah ku selidiki kemarin.

buat cara back up konten blogger bisa pakai link itu, dari dulu aku selalu pakai cara Blogger Archive Feed (aku lebih suka sebut sebagai endpoint API internal, karena aku selalu pakai cara ini buat fitur apapun yang berhubungan dengan blogger).

btw min, gua mau kembangin web demo ku, yang hanhaoyu itu, ntar aku bisa partnership an dengan emissionhex?
0
2201 – 2400 of 2403
Post a Comment
Forum rules
You can use English or Indonesian
Back to top Back to bottom